Как прочитать калибровку в профиле линии

Я хотел бы прочитать калибровочный коэффициент профиля линии. Он хранится в "Информация об отображении изображения - калибровка". Я использую функцию GetUnitsH (image, num), но получаю только номер канала, а не калиброванную позицию (в нанометрах).

Заранее спасибо.

1 ответ

Команда, которую вы ищете:

Number ImageGetDimensionScale( BasicImage, Number dimension )
Number ImageGetDimensionOrigin( BasicImage, Number dimension )
String ImageGetDimensionUnitString( BasicImage, Number dimension )

Number ImageGetIntensityScale( BasicImage )
Number ImageGetIntensityOrigin( BasicImage )
String ImageGetIntensityUnitString( Number dimension )

Это даст вам калибровки, как показано на изображении.

Чтобы преобразовать откалиброванные и некалиброванные единицы измерения, вы должны самостоятельно выполнить математические расчеты.

И да, каждая из команд "Get" также имеет соответствующую команду "Set", если вам это нужно.


Одна вещь, на которую стоит обратить внимание:

Вы действительно смотрите на свое изображение или на его копию? В частности, убедитесь, что вы используете := и не = при назначении переменных изображения для изображений.

Пример: это будет работать:

Image img := GetFrontImage()
number scale_x = img.ImageGetDimensionScale(0)
Result("\n Scale X:" + scale_x )

Это не будет работать:

Image img = GetFrontImage()
number scale_x = img.ImageGetDimensionScale(0)
Result("\n Scale X:" + scale_x )

Во втором случае можно получить ссылку на самое переднее изображение, но = просто скопирует значения (а не калибровки или другие метаданные) в новое изображение.

Другие вопросы по тегам