Matlab 调用Optris Pi 450i红外相机direct SDK相关函数摘记

官网链接:optris PI SDKs

在matlab中通过 m文件调用mex文件,实现(必须先配置好mex运行环境)

Successfully tested compilers are:

- MinGW 4.9

- Microsoft Visual C++ 2013 Professional

- Microsoft Windows SDK 7.1

本机的mex 设置:

Matlab 调用Optris Pi 450i红外相机direct SDK相关函数摘记

用户文件必须和 EvoIRMatlabInterface.m及libirimager.dll等全部api文件位于同一目录下。

(1)声明(创建)对象(一般声明为public 或者global类型)

IRInterface = EvoIRMatlabInterface;

(2)与相机连接

IRInterface.connect() 成功后会返回1,否则返回0

(3)设置伪彩色调色板

IRInterface.set_palette_colormap(PaletteValue);

输入参数为1~11的整数,其palette名称及数值的对应关系如下:

数值

名称

数值

名称

1

AlarmBlue

7

IronHi

2

AlarmBlueHi

8

Medical

3

GrayWB(white hot)

9

Rainbow

4

GrayBW(black hot)

10

RainbowHi

5

AlarmGreen

11

AlramRed

6

Iron

* 这些参数均可以在SDK里的头文件—— EvoIRFrameMetadata.h 中找到。

Matlab 调用Optris Pi 450i红外相机direct SDK相关函数摘记

(4) 设置显示的温度区间

IRInterface.set_temperature_range(min, max);

min为显示最小温度值;

max为显示的最大温度值。

* 手工设置改制,scale配置为手动,则图像具有带通滤波的效果;

(5) 设置自动调整

IRInterface.set_palette_scale(PSID);

'Manual', ... 1

'MinMax', ... 2

'Sigma1', ...3

'Sigma2' ...4

(6) 相机快门(?)

IRInterface.trigger_shutter_flag();

(7)结束连接

app.IRInterface.terminate();

附: EvoIRFrameMetadata.h 部分内容

// filename: EvoIRFrameMetadata.h
/**
 * @brief sets palette format to daemon.
 * Defined in IRImager Direct-SDK, see
 * enum EnumOptrisColoringPalette{eAlarmBlue   = 1,
 *                                eAlarmBlueHi = 2,
 *                                eGrayBW      = 3,
 *                                eGrayWB      = 4,
 *                                eAlarmGreen  = 5,
 *                                eIron        = 6,
 *                                eIronHi      = 7,
 *                                eMedical     = 8,
 *                                eRainbow     = 9,
 *                                eRainbowHi   = 10,
 *                                eAlarmRed    = 11 };
 *
 * @param id palette id
 * @return error code: 0 on success, -1 on error, -2 on fatal error (only TCP connection)
 */
__IRDIRECTSDK_API__ int evo_irimager_set_palette(int id);

/**
 * @brief sets palette scaling method
 * Defined in IRImager Direct-SDK, see
 * enum EnumOptrisPaletteScalingMethod{eManual = 1,
 *                                     eMinMax = 2,
 *                                     eSigma1 = 3,
 *                                     eSigma3 = 4 };
 * @param scale scaling method id
 * @return error code: 0 on success, -1 on error, -2 on fatal error (only TCP connection)
 */

用App designer 或者GUIDE 开发个界面,通过上述函数,即可与Optris Pi 系列相机连接

Matlab 调用Optris Pi 450i红外相机direct SDK相关函数摘记

 运行效果:

Matlab 调用Optris Pi 450i红外相机direct SDK相关函数摘记

上一篇:安卓百度地图sdk


下一篇:人工智能Java SDK:句向量提取【支持100种语言】