Как прочитать калибровку в профиле линии
Я хотел бы прочитать калибровочный коэффициент профиля линии. Он хранится в "Информация об отображении изображения - калибровка". Я использую функцию 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 )
Во втором случае можно получить ссылку на самое переднее изображение, но =
просто скопирует значения (а не калибровки или другие метаданные) в новое изображение.