Переход назад
Оглавление

Файл Optics.h

Библиотека работы с оптическими преобразованиями CAAM. Подробнее...

См. исходные тексты.

Функции

void SetLengthOptics (TOptics Source, int size, double trueSize)
 Производит инициализацию размеров и масштабов изображения.
void CopyOptics (TOptics Source, TOptics Optics)
 Производит точное копирование оптического изображения.
void RectCopyOptics (TOptics Source, int x, int y, int width, int height, TOptics Optics)
 Производит копирование оптического изображения.
int GetLengthOptics (TOptics Source)
 Возвращает размер поля оптического изображения.
double GetOpticsAmplitude (TOptics Source, int x, int y)
 Возвращает амплитуду заданной точки оптического изображения.
double GetOpticsPhase (TOptics Source, int x, int y)
 Возвращает фазу заданной точки оптического изображения.
void GetOptics (TOptics Source, int x, int y, double Amplitude, double Phase)
 Получает амплитуду и фазу заданной точки оптического изображения.
void SetOptics (TOptics Source, int x, int y, double Amplitude, double Phase)
 Задает амплитуду и фазу заданной точки оптического изображения.
void SetDefaultAmplitude (TOptics Source, double Amplitude)
 Задает определенную амплитуду по всему полю.
double SKO (TOptics TestOptics, TOptics StandardOptics)
 Возвращает Среднеквадратичое Отклонение (СКО) оптических полей.
void NormalOptics (TOptics Optics)
 Производит нормализацию светового пучка.
double OpticsRootMeanSquareDeviation (TOptics Test, TOptics Standard)
 Возвращает Среднеквадратичое Отклонение (СКО) двух полей разных размеров.
void LoadFromBMPOptics (TOptics Optics, AnsiString AmplitudePath, AnsiString PhasePath)
 Производит загрузку оптического изображения из BMP файлов.
void LoadFromTxtOptics (TOptics Optics, AnsiString ampPath, int ampStartLine, int ampFinishLine, double ampDefaultValue, AnsiString phPath, int phStartLine, int phFinishLine, double phDefaultValue)
 Производит загрузку оптического изображения из TXT файлов.


Подробное описание

Библиотека работы с оптическими преобразованиями CAAM.

В данном модуле находится описание класса TOptics.

Автор:
Сергей Балалаев
Версия:
1.00
Прим.:
В связи с независимостью данной библиотеки с использующей ее системой ее версия может быть более ранней чем версия системы, однако при обратной ситуации (файл описания имеет более позднюю версию чем библиотека) может не допустить загрузки библиотеки.

Функции

void CopyOptics ( TOptics  Source,
TOptics  Optics 
)

Производит точное копирование оптического изображения.

из исходного изображения в абсолютной точности.

Аргументы:
Source TOptics [in] - источник копирования.
Optics TOptics [out] - результирующий оптический объект.
См. также:
RectCopyOptics , SetLengthOptics .

int GetLengthOptics ( TOptics  Source  ) 

Возвращает размер поля оптического изображения.

Возвращает:
int размер поля оптического изображения в пикселах (ширина и/или длина).
Аргументы:
Source TOptics [in] - исследуемое оптическое изображение
См. также:
SetLengthOptics .

void GetOptics ( TOptics  Source,
int  x,
int  y,
double  Amplitude,
double  Phase 
)

Получает амплитуду и фазу заданной точки оптического изображения.

Используется для того чтобы одним вызовом получить сразу и амплитуду и фазу оптического изображения в заданной точке.

Аргументы:
Source TOptics [in] - исследуемое оптическое изображение
x int [in] - координата заданной точки по горизонтали, оси X в пиксилах от верхнего левого угла.
y int [in] - координата заданной точки по вертикали, по оси Y в пиксилах от верхнего левого угла.
Amplitude double [out] - амплитуда заданной точки.
Phase double [out] - фаза заданной точки.
Уст.:
вместо данной функции рекомендуется использовать GetOpticsAmplitude и GetOpticsPhase.
См. также:
GetOpticsAmplitude , GetOpticsPhase , SetOptics .

double GetOpticsAmplitude ( TOptics  Source,
int  x,
int  y 
)

Возвращает амплитуду заданной точки оптического изображения.

Возвращает:
double значение амплитуды заданной точки.
Аргументы:
Source TOptics [in] - исследуемое оптическое изображение
x int [in] - координата заданной точки по горизонтали, оси X в пиксилах от верхнего левого угла.
y int [in] - координата заданной точки по вертикали, по оси Y в пиксилах от верхнего левого угла.
См. также:
GetOpticsPhase .

double GetOpticsPhase ( TOptics  Source,
int  x,
int  y 
)

Возвращает фазу заданной точки оптического изображения.

Возвращает:
double значение фазы заданной точки.
Аргументы:
Source TOptics [in] - исследуемое оптическое изображение
x int [in] - координата заданной точки по горизонтали, оси X в пиксилах от верхнего левого угла.
y int [in] - координата заданной точки по вертикали, по оси Y в пиксилах от верхнего левого угла.
См. также:
GetOpticsAmplitude .

void LoadFromBMPOptics ( TOptics  Optics,
AnsiString  AmplitudePath,
AnsiString  PhasePath 
)

Производит загрузку оптического изображения из BMP файлов.

Для этого нужно два изображения (амплитуды и фазы) светового поля.

Аргументы:
Optics TOptics [out] - загружаемое оптическое изображение
AmplitudePath AnsiString [in] - путь к BMP фаилу амплитуды поля изображения
PhasePath AnsiString [in] - путь к BMP фаилу фазы поля изображения
Предупреждения:
BMP изображения должны быть 8бит формата в градациях серого в противном случае при их загрузке произойдет непоправимая ошибка.

void LoadFromTxtOptics ( TOptics  Optics,
AnsiString  ampPath,
int  ampStartLine,
int  ampFinishLine,
double  ampDefaultValue,
AnsiString  phPath,
int  phStartLine,
int  phFinishLine,
double  phDefaultValue 
)

Производит загрузку оптического изображения из TXT файлов.

Для этого нужно один или два (амплитуды и фазы) текстовых файла в матричном формате описывающих световое поле.

Аргументы:
Optics TOptics [out] - загружаемое оптическое изображение
ampPath AnsiString [in] - путь к TXT фаилу амплитуды поля изображения. Если строка пустая грузиться просто не будет и следующие параметры игнорируются.
ampStartLine int [in] - номер строки с которой будет начинаться загрузка для амплитуды
ampFinishLine int [in] - номер строки которой будет заканчиваться загрузка для амплитуды
ampDefaultValue double [in] - значение присваемовое по умолчанию для амплитуды, если оно равно -1 то будет выбранно предыдущее загруженное значение.
phPath AnsiString [in] - путь к TXT фаилу фазы поля изображения. Если строка пустая грузиться просто не будет и следующие параметры игнорируются.
phStartLine int [in] - номер строки с которой будет начинаться загрузка для фазы
phFinishLine int [in] - номер строки которой будет заканчиваться загрузка для фазы
phDefaultValue double [in] - значение присваемовое по умолчанию для фазы, если оно равно -1 то будет выбранно предыдущее загруженное значение.
Предупреждения:
объект Optics должен быть инициализирован так чтобы размер матрицы был не меньше чем определен в текстовом файле.

void NormalOptics ( TOptics  Optics  ) 

Производит нормализацию светового пучка.

при его действиях объект получает вещественную амплитуду в промежутке: [0..1]

Аргументы:
Optics TOptics [out] - нормализуемое оптическое изображение.
См. также:
NormalSchedule .
Прим.:
Чаще всего необходима для сравнения двух полей, полученных с различными контрастами, например с помощью SKO .

double OpticsRootMeanSquareDeviation ( TOptics  Test,
TOptics  Standard 
)

Возвращает Среднеквадратичое Отклонение (СКО) двух полей разных размеров.

Возвращает:
Вещественное число [0..1]. Среднеквадратичное отклонение поля TestSchedule относительно графика StandardSchedule.
Аргументы:
Test TOptics [in] - проверяемое поле.
Standard TOptics [in] - эталонная линия графика.
См. также:
SKO , ScheduleSKOR , SKOComplex1D .
Прим.:
Иногда для сравнения полей удобно сначало их нормировать с помощью NormalOptics .

void RectCopyOptics ( TOptics  Source,
int  x,
int  y,
int  width,
int  height,
TOptics  Optics 
)

Производит копирование оптического изображения.

из исходного изображения в строго заданной рамке.

Аргументы:
Source TOptics [in] - источник копирования.
x [in] - горизонтальная координата верхнего-левого края прямоугольника копирования.
y [in] - горизонтальная координата верхнего-левого края прямоугольника копирования.
width [in] - ширина прямоугольника копирования.
height [in] - высота прямоугольника копирования.
Optics TOptics [out] - результирующий оптический объект.
См. также:
CopyOptics , SetLengthOptics .

void SetDefaultAmplitude ( TOptics  Source,
double  Amplitude 
)

Задает определенную амплитуду по всему полю.

Устанавливает всем точкам оптического изображения одно и тоже значение амплитуды.

Аргументы:
Source TOptics [out] - переопределяемое оптическое изображение.
Amplitude double [in] - амплитуда для всех точек.
См. также:
SetOptics .

void SetLengthOptics ( TOptics  Source,
int  size,
double  trueSize 
)

Производит инициализацию размеров и масштабов изображения.

Без данной подготовки изображение типа TOptics использоваться не может.

Аргументы:
Source TOptics [out] - оптическое изображение, у которого меняются параметры.
size [in] - размер изображения в пикселах.
trueSize [in] - размер изображения в мм.
См. также:
RectCopyOptics , CopyOptics .

void SetOptics ( TOptics  Source,
int  x,
int  y,
double  Amplitude,
double  Phase 
)

Задает амплитуду и фазу заданной точки оптического изображения.

Используется для того чтобы одним вызовом установить сразу и амплитуду и фазу оптического изображения в заданной точке.

Аргументы:
Source TOptics [out] - переопределяемое оптическое изображение.
x int [in] - координата заданной точки по горизонтали, оси X в пиксилах от верхнего левого угла.
y int [in] - координата заданной точки по вертикали, по оси Y в пиксилах от верхнего левого угла.
Amplitude double [in] - амплитуда заданной точки.
Phase double [in] - фаза заданной точки.
См. также:
GetOpticsAmplitude , GetOpticsPhase , GetOptics .

double SKO ( TOptics  TestOptics,
TOptics  StandardOptics 
)

Возвращает Среднеквадратичое Отклонение (СКО) оптических полей.

Возвращает:
Вещественное число [0..1]. Среднеквадратичное отклонение поля TestOptics относительно поля StandardOptics.
Аргументы:
TestOptics TOptics [in] - испытываемое комплексное поле.
StandardOptics TOptics [in] - эталонное комплексное поле.
Уст.:
Смотри BxOptics.h -> SKO . Эта функция делает тоже самое.
См. также:
ScheduleRootMeanSquareDeviation , ScheduleSKOR , SKOComplex1D .
Прим.:
Иногда для сравнения полей удобно сначало их нормировать с помощью NormalOptics .

Документация по системе CAAM. © Все права защищены БайтериКС 2005-2015. BYTERIX.COM byterix