版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 大恒图像系列数字摄像机数字摄像机软件开发说明书2009年5月版 本手册中所提及的其它软硬件产品的商标与名称,都属于相应公司所有。本手册的版权属于中国大恒(集团有限公司 北京图像视觉技术分公司所有。未得到本公司的正式许可,任何组织或个人均不得以任何手段和形式对本手册内容进行复制或传播。本手册的内容若有任何修改,恕不另行通知。© 2007 中国大恒(集团有限公司北京图像视觉技术分公司 版权所有网站:http:/www.daheng-销售信箱:salesdaheng-销售热线:010-*转8021支持信箱:supportdaheng-支持热线:010-*转8006 前 言首先感谢您选用大
2、恒图像产品,数字摄像机应用接口库是我公司提供的应用程序接口函数。它基本上概括了数字摄像机应用程序编程中涉及的各个方面,通过应用接口库,用户可以很好地了解数字摄像机的运行机制,并在此基础上进行应用程序的开发。数字摄像机应用接口库按照模块分为应用功能模块和扩充功能模块。其中应用功能模块包括数字摄像机的控制、采集图像到内存、错误处理等功能,扩充功能模块包括图像数据的转换等功能。本手册按功能对接口库中的函数进行了划分,对于每一个功能部分的函数都具体给出了它们的函数原型、参数定义、说明、示例等信息。手册为用户进行数字摄像机的二次开发提供了详细的说明,如果用户在使用过程中发现错误和纰漏,请与我公司的销售或
3、技术服务部门联系,以便我们及时改进。 目 录1概述 (11.1功能 (21.2文件 (21.2.1应用功能模块 (21.2.2扩充功能模块 (21.3开发工具 (21.4应用程序的发布 (32说明 (42.1 应用功能 (42.1.1 定义 ( 常量 ( 结构 ( 宏 (212.1.2函数说明 (数字摄像机的控制 (231.函 数:BeginHVDevice (232.函 数:EndHVDevice (243.函 数:HVSetResolution (244.函 数:HVSetOutputWindow (255.函 数 HVS
4、etBlanking (266.函 数:HVSetSnapMode (277.函 数:HVSetTriggerPolarity (288.函 数:HVSetStrobePolarity (28 9.函 数:HVSetSnapSpeed (2910.函 数:HVEnableVideoMirror (3011.函 数:HVADCControl (3012.函 数:HVAGCControl (3213.函 数:HVAECControl (3314.函 数:HVCommand (3采集图像到内存 (371.函 数:HVSnapShot (372.函 数:HVOpenSnap (383.
5、函 数:HVCloseSnap (394.函 数:HVStartSnap (395.函 数:HVStopSnap (406.函 数:HVTriggerShot (417.函 数:HVWaitSync (4错误处理 (421.函 数:HVGetErrorString (4其它功能 (421.函 数:HVGetDeviceTotal (422.函 数:HVGetDeviceInfo (433.函 数:HVCheckDevice (464.函 数:HVDeviceMemRead (475.函 数:HVDeviceMemWrite (482.2扩充功能 (492.2.1
6、 定义 (4 常量 (49 目录2.2.2 函数说明 (5图像数据的转换及校正 (511.函 数:ConvertBayer2RGB (512.函 数:GetWhiteBalanceRatio (533.函 数:SetGammaLut (544.函 数:DetectDeadPixel (545.函 数:EraseDeadPixel (556.函 数:GetPatternNoise (567.函 数:AvgPatternNoise (578.函 数:FixPatternNoise (583.附录 (603.1函数返回值代码表 (604.备注 (62 1概述在Micr
7、osoft 的32位Windows操作系统中,数字摄像机应用接口库直接操作数字摄像机,并提供给用户一个简单明确的应用接口。用户在编制自己的应用程序时,可以直接调用这些库函数来实现指定的功能。数字摄像机工作流程如下: 一般情况下,摄像机的开始操作和初始化参数的设置,最好在用户应用程序的初始化中完成,摄像机的结束操作应在应用程序退出前执行。1 1.1功能应用接口库划分为应用功能模块和扩充功能模块。1.2文件1.2.1应用功能模块包含文件HVDAIlT.h动态链接库HVDAIlT.dll静态链接库HVDAIlT.lib1.2.2扩充功能模块包含文件Raw2RGB.h动态链接库Raw2RGB.dll静
8、态链接库Raw2RGB.lib1.3开发工具应用接口库支持32位编程开发工具Microsoft Visual C/C+、Microsoft Visual Basic、Borland C/C+、Delphi、C+ Builder、Power Builder等。使用C/C+编程工具,用户应在程序中调用相关的包含文件(.h,并将静态链接库(.lib文件加入到工程文件中,供编译程序在链接(Link时使用。需要说明的是,MS-Visual C/C+和C+ Builder定义了各自的静态链接库的文件格式,它们之间是不通用的。2 使用MS-Visual Basic、Delphi、Power Builder等
9、编程工具调用应用接口库时,应按照调用动态链接库的方法,在程序中重新声明函数原型,这时要注意正确定义参数的数据类型。1.4应用程序的发布发布数字摄像机的应用程序,首先,安装摄像机的设备驱动程序(安装步骤可参见“安装数字摄像机设备驱动程序”说明,并确认安装成功;然后,将要发布的应用程序安装到相应的工作目录。这样,应用程序就可以运行了。如果需要将驱动程序与二次开发的应用程序安装盘一并发布,请将随卡的驱动程序光盘或软盘中,相应操作系统目录下的驱动程序拷贝到准备发布的安装盘上即可。3 2说明2.1 应用功能数字摄像机应用接口库包括数字摄像机的控制、采集图像到内存、错误处理、其它功能等功能。函数的原型声明
10、在包含文件HVDAIlT.h,动态链接库HVDAIlT.dll,静态链接库HVDAIlT.lib。2.1.1 定义模块中相关常量,数据结构,宏的说明。 常量1.typedef HANDLE HHV;HHV 标识数字摄像机设备句柄。数字摄像机的控制,参数设置,图像采集等,都需要使用设备句柄。2.typedef enum tagHVTYPE HV1300UCTYPE = 0,HV2000UCTYPE = 1,HV1301UCTYPE = 2,HV2001UCTYPE = 3,HV3000UCTYPE = 4,HV1300UMTYPE = 5,HV1302UCTYPE = 6,HV20
11、02UCTYPE = 7,4 HV3102UCTYPE = 8,HV1302UMTYPE = 9HV1300FCTYPE = 10,HV2000FCTYPE = 11,HV3100FCTYPE = 12,HV1300FMTYPE = 13,HV1303UCTYPE = 14,HV2003UCTYPE = 15,HV3103UCTYPE = 16,HV1303UMTYPE = 17,SV1300FMTYPE = 18,SV1300FCTYPE = 19, SV1310FCTYPE = 20,SV1310FMTYPE = 21,SV1311FCTYPE = 22,SV1311FMTYPE = 23
12、,SV400FCTYPE = 24,SV400FMTYPE = 25,DH1394FXTYPE = 26,SV1410FCTYPE = 27,SV1410FMTYPE = 28,SV1420FCTYPE = 29,5 SV1420FMTYPE = 30,SV2000FCTYPE = 31,SV2000FMTYPE = 32,SV1400FCTYPE = 33,SV1400FMTYPE = 34,HV1350UCTYPE = 35,HV2050UCTYPE = 36,HV3150UCTYPE = 37,HV1350UMTYPE = 38,HV1360UCTYPE = 39,HV2060UCTYP
13、E = 40,HV3160UCTYPE = 41,HV1360UMTYPE = 42 HVTYPE;HVTYPE 标识当前数字摄像机的设备类型。不同类型的数字摄像机有一些不同的硬件特性或参数,用户需要根据摄像机类型,完成相关的操作。3.typedef enum tagHV_RESOLUTION RES_MODE0 = 0,RES_MODE1 = 1,RES_MODE2 = 2,RES_MODE3 = 36 HV_RESOLUTION;HV_RESOLUTION 标识图像分辨率的类型。RES_MODE0分辨率0;RES_MODE1分辨率1;RES_MODE2分辨率2;RES_MODE3分辨率3。
14、4.typedef enum tagHV_SNAP_MODE CONTINUATION = 0,TRIGGER = 1,TRIGGER_EDGE = 2,TRIGGER_LEVEL = 3 HV_SNAP_MODE;HV_SNAP_MODE 标识图像采集模式。CONTINUATION连续;TRIGGER外触发;7 TRIGGER_EDGE边缘外触发;TRIGGER_LEVEL电平外触发。5. typedef enum tag HV_POLARITY LOW = 0,HIGH = 1 HV_POLARITY;HV_POLARITY 标识摄像机为外触发采集模式时,外触发信号的极性。LOW下降沿或低
15、电平有效;HIGH上升沿或高电平有效。6. typedef enum tagHV_SNAP_SPEED NORMAL_SPEED = 0,HIGH_SPEED = 1 HV_SNAP_SPEED;HV_SNAP_SPEED 标识图像采集速度。NORMAL_SPEED正常速度采集;HIGH_SPEED8 高速采集。7. typedef enum tagHV_CHANNEL RED_CHANNEL = 0x10,GREEN_CHANNEL1 = 0x11,GREEN_CHANNEL2 = 0x12,BLUE_CHANNEL = 0x13 HV_CHANNEL;HV_CHANNEL 标识摄像机的颜色
16、通道。RED_CHANNEL红色通道;GREEN_CHANNEL1绿色通道1;GREEN_CHANNEL2绿色通道2;BLUE_CHANNEL蓝色通道。8.typedef enum tagHV_ADC_CONTROLADC_BITS = 0ADC_BLKLEVEL_CAL = 1,ADC_BLKLEVEL_CAL_REDCHANNEL = 0x10,9 ADC_BLKLEVEL_CAL_GREENCHANNEL1 = 0x11,ADC_BLKLEVEL_CAL_GREENCHANNEL2 = 0x12,ADC_BLKLEVEL_CAL_BLUECHANNEL = 0x13,ADC_BRIGHT
17、NESS = 2 HV_ADC_CONTROL;HV_ADC_CONTROL 标识摄像机的模拟/数字转换控制方式。ADC_BITS模拟/数字转换级别控制;ADC_BLKLEVEL_CAL黑电平参数调节允许;ADC_BLKLEVEL_CAL_REDCHANNEL红色通道黑电平调节;ADC_BLKLEVEL_CAL_GREENCHANNEL1绿色通道1黑电平调节;ADC_BLKLEVEL_CAL_GREENCHANNEL2绿色通道2黑电平调节;ADC_BLKLEVEL_CAL_BLUECHANNEL蓝色通道黑电平调节;ADC_BRIGHTNESS亮度调节。10 9.typedef enum tag
18、HV_ADC_LEVELADC_LEVEL0 = 0,ADC_LEVEL1 = 1,ADC_LEVEL2 = 2,ADC_LEVEL3 = 3 HV_ADC_LEVEL;HV_ADC_LEVEL 标识模拟/数字转换级别。ADC_LEVEL00级,10位数据取低7位有效;ADC_LEVEL01级,10位数据取低8位有效;ADC_LEVEL22级,10位数据取中间8位有效;ADC_LEVEL33级,10位数据取高8位有效。10.typedef enum tagHV_AEC_CONTROLAEC_EXPOSURE_TIME = 1,AEC_SHUTTER_SPEED = 2,AEC_SHUTTER_
19、UNIT = 3 HV_AEC_CONTROL;HV_AEC_CONTROL 标识摄像机曝光控制方式。11 AEC_EXPOSURE_TIME曝光系数;AEC_SHUTTER_SPEED快门速度;AEC_SHUTTER_UNIT快门速度单位。11. typedef enum tagHV_SHUTTER_UNIT SHUTTER_US = 0,SHUTTER_MS = 1,SHUTTER_S = 2 HV_SHUTTER_UNIT;HV_SHUTTER_UNIT 标识摄像机快门速度的单位。SHUTTER_US微秒;SHUTTER_MS毫秒;SHUTTER_S秒。12. typedef enum
20、tagHV_AGC_CONTROLAGC_GAIN_RED_CHANNEL = 0x10,12 AGC_GAIN_GREEN_CHANNEL1 = 0x11,AGC_GAIN_GREEN_CHANNEL2 = 0x12,AGC_GAIN_BLUE_CHANNEL = 0x13,AGC_GAIN = 2 HV_ADC_CONTROL;HV_ADC_CONTROL 标识摄像机增益控制方式。AGC_BLKLEVEL_CAL_REDCHANNEL红色通道增益调节;AGC_BLKLEVEL_CAL_GREENCHANNEL1绿色通道1增益调节;AGC_BLKLEVEL_CAL_GREENCHANNEL2
21、绿色通道2增益调节;AGC_BLKLEVEL_CAL_BLUECHANNEL蓝色通道增益调节;AGC_GAIN增益调节。13.typedef enum tag HV_MIRROR_DIRECTION VERT_DIR = 1 HV_MIRROR_DIRECTION;HV_MIRROR_DIRECTION 标识图像采集的镜像功能。VERT_DIR13 垂直方向。14. typedef enum tagHV_COMMAND_CODE CMD_HVAPI_CONTROL = 0x100 HV_COMMAND_CODE;HV_COMMAND_CODE 标识摄像机的控制功能。 CMD_HVAPI_CON
22、TROL执行HV_CONTROL_CODE定义的功能。15.typedef enum tag HV_DEVICE_INFO DESC_DEVICE_TYPE = 0,DESC_RESOLUTION = 1,DESC_DEVICE_MARK = 2,DESC_DEVICE_SERIESNUM = 3,DESC_DEVICE_BLANKSIZE = 4,DESC_DEVICE_HARDWARE_VERSION = 6 HV_DEVICE_INFO;HV_DEVICE_INFO 标识摄像机的信息。DESC_DEVICE_TYPE摄像机的设备类型;DESC_RESOLUTION摄像机的分辨率;DESC
23、_DEVICE_MARK14 摄像机类型的标志;DESC_DEVICE_SERIESNUM摄像机的序列号;DESC_DEVICE_BLANKSIZE消隐的取值范围;DESC_DEVICE_HARDWARE_VERSION摄像机的设备(硬件版本号。16.typedef enum tagHV_CONTROL_CODE ORD_QUERY_LAST_STATUS_PRESENCE = 0x0000000C,ORD_GET_LAST_STATUS = 0x0000000E HV_CONTROL_CODE;HV_CONTROL_CODE,列举函数HVCommand的命令控制码CMD_HVAPI_ CON
24、TROL执行的功能。ORD_QUERY_LAST_STATUS_PRESENCE用于查询是否支持,获取摄像机的工作状态;ORD_GET_LAST_STATUS用于获取摄像机的工作状态。17.typedef enum tagHV_LAST_STATUS HV_LAST_STATUS_ERROR_CONTROL = 0,HV_LAST_STATUS_SNAP = 1,15 HV_LAST_STATUS_TRANSFER = 2 HV_LAST_STATUS;HV_LAST_STATUS列举摄像机工作状态类型。HV_LAST_STATUS_ERROR_CONTROL摄像机控制操作错误码,调用控制函数
25、返回错误值时,使用ORD_GET_LAST_STATUS获取的详细错误信息;HV_LAST_STATUS_SNAP摄像机采集图像操作状态码,实时采集图像时,查询摄像机采集状态;HV_LAST_STATUS_TRANSFER摄像机采集图像操作状态码,实时采集图像时,在用户定义的回调函数中使用,查询摄像机采集状态。 结构1.typedef struct tagHV_SANP_INFO HHV hhv;int nDevice;int nIndex;void *pParam; HV_SNAP_INFO;HV_SNAP_INFO 结构包含执行采集图像到内存的操作中,摄像机的工作状态。在连续
26、采集图像到内存的过程中,标示当前工作的16 摄像机设备,图像数据缓冲区的序号和用户定义的参数。成员 hhv标示当前工作的摄像机的句柄。nDevice标示当前工作的摄像机的序号(从1开始。nIndex标示当前摄像机采集的图像数据缓冲区的序号(从0开始。pParam指向用户定义的参数。2.typedef int (CALLBACK *HV_SNAPPROC(HV_SNAP_INFO *pInfo;HV_SNAPPROC标示回调函数的声明。在采集图像到内存控制程序中,用户定义回调函数,在函数体中编写自己的程序,如,图像数据的处理等。使用函数HVOpenSnap注册回调函数,由摄像机采集控制程序调用。
27、3. typedef struct tagHV_CHECK_PARAM BYTE byParam1;BYTE byParam2;BYTE byParam3;BYTE byParam4;17 HV_CHECK_PARAM;HV_CHECK_PARAM 结构包含给定的摄像机查验参数。成员 byParam1参数1。byParam2参数2。byParam3参数3。byParam4参数4。4.typedef struct tagHVAPI_CONTROL_PARAMETER HV_CONTROL_CODE code;void *pInBuf;DWORD dwInBufSize;void *pOutBuf
28、;DWORD dwOutBufSize;DWORD *pBytesRet; HVAPI_CONTROL_PARAMETER;HVAPI_CONTROL_PARAMETER结构用于CMD_HVAPI_CONTROL 功能的输入输出参数。成员 code18 功能码,参见HV_CONTROL_CODE,其它成员pInBuf, dwInBufSize,pOutBuf,dwOutBufSize和pBytesRet 描述code的参数,每个功能都有各自对应的输入输出参数;pInBuf指向输入缓冲区,如果code指明的操作不需要输入参数,pInBuf设置为NULL;dwInBufSize输入缓冲区大小,单位
29、:字节,如果code指明的操作不需要输入参数,dwInBufSize设置为0; pOutBuf指向输出缓冲区,如果code指明的操作不需要输出参数,pOutBuf设置为NULL;dwOutBufSize输出缓冲区大小,单位:字节,如果code指明的操作不需要输入参数,dwOutBufSize设置为0; pBytesRet指向一个DWORD变量,接收pOutBuf中实际输出的数据大小,单位:字节,如果输出缓冲区太小,HVCommand 函数返回STATUS_NOT_ENOUGH_SYSTEM_MEMORY,并且pBytesRet为0。19 5.typedef struct tagHV_RES_Q
30、UERY_LAST_STATUS_PRESENCE DWORD : 29;DWORD Transfer : 1;DWORD Snap : 1;DWORD Control : 1; HV_RES_QUERY_LAST_STATUS_PRESENCE;HV_RES_QUERY_LAST_STATUS_PRESENCE结构用于ORD_QUERY_LAST_STATUS_PRESENCE的输出参数,描述是否支持,获取摄像机的工作状态。成员Transfer标示是否支持,在用户定义的回调函数中获取摄像机采集图像操作状态码;Snap标示是否支持,获取摄像机采集图像操作状态码;Control标示是否支持,获取
31、摄像机控制操作错误码。6.typedef struct tagHV_ARG_GET_LAST_STATUS HV_LAST_STATUS type; HV_ARG_GET_LAST_STATUS;HV_ARG_GET_LAST_STATUS结构用于ORD_GET_LAST_STATUS的输入参数,描述要获取的摄像机工作状态类型。20 成员 type摄像机工作状态类型,参见HV_LAST_STATUS。7.typedef struct tagHV_RES_GET_LAST_STATUS DWORD status; HV_RES_GET_LAST_STATUS;HV_RES_GET_LAST_ST
32、ATUS结构用于ORD_GET_LAST_STATUS的输出参数,描述摄像机工作状态。成员 status标识摄像机工作状态码或错误码。 宏1.HV_SUCCESSBOOL HV_SUCCESS(statusHV_SUCCESS宏检查函数执行的返回状态。参 数:HVSTATUS status;函数执行的返回状态。返回值:标识函数执行结果,成功为TRUE;失败为FALSE。注 释:HV_SUCCESS在HVDef.h中的定义如下,#define HV_SUCCESS(status(status=STATUS_OK 21 2.HV_VERIFYHV_VERIFY(statusHV_VE
33、RIFY宏校验函数执行是否成功。HV_VERIFY宏只在调试(DEBUG版的执行程序中运行,函数执行成功,不显示信息;函数执行不成功,则弹出对话框,显示错误信息。在发布(RELEASE版的执行程序中不运行,也不产生任何代码。参 数:HVSTATUS status;函数执行的返回状态。注 释:HV_VERIFY在HVDef.h中的定义如下,#ifdef _DEBUG#define HV_VERIFY(status if(status != STATUS_OK :MessageBox(NULL, HVGetErrorString(status, "Error",MB_ICONW
34、ARNING | MB_OK; #else#define HV_VERIFY(status (status#endif22 2.1.2函数说明数字摄像机的控制数字摄像机的开始(初始化、结束,设置分辨率、图像窗口、采集模式等。1.函 数:BeginHVDevice原 型:HVSTATUS _stdcall BeginHVDevice(int nDevice, HHV *pHandle参 数:int nDevice;摄像机序号,由1开始。HHV *pHandle;指向摄像机设备句柄。返回值:调用成功,返回STATUS_OK,否则返回错误代码。说 明:开始指定摄像机操作,初始化摄像机,
35、获得其设备句柄,分配相应的资源。输入参数nDevice是摄像机的逻辑序号,按照大恒数字摄像机序列,如HV1300UC、HV2000UC HVxxx等,由低到高排列确定,同一型号设备按所连接USB接口序号排列。例如:用户系统中有3支HV1300UC,按USB接口序号,则摄像机的序号分别为1、2、3。如果nDevice的值超过当前系统实际的摄像机数,则返回STATUS_NO_DEVICE_FOUND。调用函数HVGetDeviceInfo可以确定当前摄像机类型。23 摄像机使用完毕,调用函数EndHVDevice结束。范 例:如果系统中安装了两支或两支以上的摄像机,则可以按下面调用得到每支摄像机的
36、设备句柄。BeginHVDevice(1,&hDevice1; /打开摄像机1BeginHVDevice(2,&hDevice2; /打开摄像机2 /类推参 看:EndHVDevice,HVGetDeviceInfo。2.函 数:EndHVDevice原 型:HVSTATUS _stdcall EndHVDevice(HHV hhv参 数:HHV hhv;摄像机句柄。返回值:调用成功,返回STATUS_OK,否则返回错误代码。说 明:结束指定摄像机操作,释放其设备句柄和资源。调用函数前,必须停止摄像机工作,如果摄像机正在采集图像时调用函数,则返回STATUS_IN_WORK。范
37、 例:EndHVDevice(hDevice1; /关闭摄像机1EndHVDevice(hDevice2; /关闭摄像机2 参 看:BeginHVDevice。3.函 数:HVSetResolution原 型:HVSTATUS _stdcall HVSetResolution(HHV hhv,HV_RESOLUTION resoultion;24 参 数:HHV hhv;摄像机句柄。HV_RESOLUTION resolution;图像分辨率。返回值:调用成功,返回STATUS_OK,否则返回错误代码。说 明:设置摄像机的分辨率,HV1300UC,HV1301UC,HV1302UC, HV13
38、03UC,HV1350UC,HV1360UC,HV1300UM,HV1302UM,HV1303UM,HV1350UM,HV1360UM摄像机的分辨率:RES_MODE0 1280×1024,RES_MODE1 640×512,RES_MODE2320×256。HV2000UC,HV2001UC,HV2002UC,HV2003UC,HV2050UC,HV2060UC摄像机的分辨率:RES_MODE0 1600×1200,RES_MODE1 800×600,RES_MODE2 400×300。HV3000UC,HV3102UC,HV310
39、3UC,HV3150UC,HV3160UC摄像机的分辨率:RES_MODE0 2048×1536,RES_MODE11024×768,RES_MODE2 640×480,RES_MODE3 512×384。有关摄像机分辨率的信息,参见函数HVGetDeviceInfo。范 例:HVSetResolution(hDevice1,RES_MODE1;参 看:HVSetOutputWindow。4.函 数:HVSetOutputWindow原 型:HVSTATUS _stdcall HVSetOutputWindow(HHV hhv, int nStartX,
40、int nStartY,int nWidth,int nHeight25 参 数:HHV hhv;摄像机句柄。int nStartX;输出窗口左上角x坐标,数值应为4的倍数。int nStartY;输出窗口左上角y坐标,数值应为2的倍数。int nWidth;输出窗口宽度,数值应为4的倍数。int nHeight;输出窗口高度,数值应为2的倍数。返回值:调用成功,返回STATUS_OK,否则返回错误代码。说 明:设置图像输出(Output窗口,输出窗口是指图像数据从摄像机输出时的起始位置和大小。输出窗口大小只能等于或小于当前分辨率的大小。范 例:HVSetOutputWindow(hDevic
41、e1,0,0,640,512;参 看:HVSetResolution。5.函 数 HVSetBlanking原 型:HVSTATUS _stdcall HVSetBlanking(HHV hhv, int nHor, int nVert;参数:HHV hhv;摄像机句柄。26 int nHor;行消隐值。int nVert;场消隐值。返回值:调用成功,返回STATUS_OK,否则返回错误代码。说 明:设置摄像机的消隐值,消隐的取值范围通过函数HVGetDeviceInfo得到,请参考HVGetDeviceInfo函数说明。范 例:HVSetBlanking(hDevice1,20,0;6.函
42、数:HVSetSnapMode原 型:HVSTATUS _stdcall HVSetSnapMode(HHV hhv,HV_SNAP_MODE mode;参 数:HHV hhv;摄像机句柄。HV_SNAP_MODE mode;图像采集模式:CONTINUATION 连续方式;TRIGGER 外触发方式;TRIGGER_EDGE 边缘外触发;TRIGGER_LEVEL 电平外触发。返回值:调用成功,返回STATUS_OK,否则返回错误代码。27 说 明:设置图像的采集方式。范 例: HVSetSnapMode(hDevice1, CONTINUATION;7.函 数:HVSetTriggerPo
43、larity原 型:HVSTATUS _stdcall HVSetTriggerPolarity(HHV hhv, HV_POLARITY polarity;参 数:HHV hhv;摄像机句柄。HV_POLARITY polarity;外触发信号的极性:LOW 下降沿或低电平有效;HIGH 上升沿或高电平有效。返回值:调用成功,返回STATUS_OK,否则返回错误代码。说 明:当摄像机为外触发模式采集图像时,设置外触发信号的极性。范 例: HVSet TriggerPolarity(hDevice1, LOW;8.函 数:HVSetStrobePolarity原 型:HVSTATUS _std
44、call HVSetStrobePolarity(HHV hhv, HV_POLARITY polarity;参 数:HHV hhv;摄像机句柄。28 HV_POLARITY polarity;闪光灯信号的极性:LOW 下降沿或低电平有效;HIGH 上升沿或高电平有效。返回值:调用成功,返回STATUS_OK,否则返回错误代码。说 明:设置摄像机输出的闪光灯信号的极性。范 例:HVSet StrobePolarity(hDevice1, LOW;9.函 数:HVSetSnapSpeed原 型:HVSTATUS _stdcall HVSetSnapSpeed (HHV hhv,HV_SNAP_S
45、PEED speed;参 数:HHV hhv;摄像机句柄。HV_SNAP_SPEED speed;图像采集速度:NORMAL_SPEED正常速度;HIGH_SPEED高速。返回值:调用成功,返回STATUS_OK,否则返回错误代码。说 明:设置图像的采集速度,例如HV1301UC,HV1302UC, HV1300UM,HV1302UM分辨率为1280×1024时,高速采集为15fps,正常速度采集时为7.5fps;HV2001UC,HV2002UC分辨率为1600×1200时,高速采集为10fps,29 正常速度采集时为5fps;HV3000UC,HV3102UC分辨率为2
46、048×1536时,高速采集为6fps,正常速度采集时为3fps。范 例: HVSetSnapMode(hDevice1, NORMAL_SPEED;10.函 数:HVEnableVideoMirror原 型:HVSTATUS _stdcall HVEnableVideoMirror(HHV hhv, HV_MIRROR_DIRECTION dir,BOOL bEnable参 数:HHV hhv;摄像机句柄。HV_MIRROR_DIRECTION dir;图像采集的镜像方向。BOOL bEnable;TRUE 允许,FALSE 禁止。返回值:调用成功,返回STATUS_OK,否则返回
47、错误代码。说 明:设置采集图像的垂直方向镜像功能。11.函 数:HVADCControl原 型:HVSTATUS _stdcall HVADCControl(HHV hhv, BYTE byParam, long lValue;参 数:HHV hhv;摄像机句柄。30 BYTE byParam;控制参数,ADC_BITS 模拟/数字转换级别;ADC_BLKLEVEL_CAL 黑电平参数调节允许;ADC_BLKLEVEL_CAL_REDCHANNEL 红色通道黑电平调节;ADC_BLKLEVEL_CAL_GREENCHANNEL1绿色通道1黑电平调节;ADC_BLKLEVEL_CAL_GREEN
48、CHANNEL2绿色通道2黑电平调节;ADC_BLKLEVEL_CAL_BLUECHANNEL蓝色通道黑电平调节;ADC_BRIGHTNESS亮度调节。long lValue;参数值,设置模拟数字转换级别,取值,ADC_LEVEL0;ADC_LEVEL1;ADC_LEVEL2;ADC_LEVEL3。设置黑电平参数调节允许,取值, TRUE 允许;FALSE 禁止。设置黑电平参数,取值,31 -255 到 255。设置亮度参数,取值,0 到 255。返回值:调用成功,返回STATUS_OK,否则返回错误代码。说 明:摄像机的模拟/数字转换控制。型 号:HV系列摄像机支持功能:ADC_BITS,A
49、DC_BLKLEVEL_CAL,ADC_BLKLEVEL_CAL_REDCHANNEL,ADC_BLKLEVEL_CAL_GREENCHANNEL1,ADC_BLKLEVEL_CAL_GREENCHANNEL2,ADC_BLKLEVEL_CAL_BLUECHANNEL。SV1300FC,SV1300FM型号摄像机支持ADC_BRIGHTNESS 功能。12.函 数:HVAGCControl原 型:HVSTATUS _stdcall HVAGCControl(HHV hhv, BYTE byParam, long lValue;参 数:HHV hhv;摄像机句柄。BYTE byParam;控制参
50、数,32 AGC_GAIN_RED_CHANNEL 红通道增益调节;AGC_GAIN_GREEN_CHANNEL1 绿通道1增益调节;AGC_GAIN_GREEN_CHANNEL2 绿通道2增益调节;AGC_GAIN_BLUE_CHANNEL 蓝通道增益调节;AGC_GAIN 摄像机增益调节。long lValue;增益大小,HV系列摄像机分通道的增益调节取值,0-127。SV1300FC,SV1300FM摄像机分通道的增益调节为:0-31,AGC_GAIN的增益调节为:0-1023。返回值:调用成功,返回STATUS_OK,否则返回错误代码。说 明:摄像机的自动增益控制。13.函 数:HVA
51、ECControl原 型:HVSTATUS _stdcall HVAECControl(HHV hhv, BYTE byParam, long lValue;参 数:HHV hhv;摄像机句柄。BYTE byParam;控制参数,AEC_EXPOSURE_TIME 曝光系数;AEC_SHUTTER_SPEED 快门速度;33 AEC_SHUTTER_UNIT 快门速度单位;long lValue;参数值,功能AEC_SHUTTER_UNIT取值:HV_SHUTTER_UNIT的类型,SHUTTER_US 微秒;SHUTTER_MS 毫秒;SHUTTER_S 秒。AEC_SHUTTER_SPEE
52、D和AEC_SHUTTER_UNIT的值决定摄像机的快门速度:最小值20微秒,最大值1秒。返回值:调用成功,返回STATUS_OK,否则返回错误代码。说 明:摄像机的自动曝光控制。HV系列摄像机通过曝光系数来设置摄像机的曝光时间,曝光系数与曝光时间的换算方法,参见相关HV系列摄像机的使用说明书中 “1.2 摄像机的快门”的内容。SV1300FC,SV1300FM型号摄像机使用快门速度和快门速度单位设置摄像机的曝光时间。14.函 数:HVCommand原 型:HVSTATUS _stdcall HVCommand(HHV hhv, HV_COMMAND _CODE CommandCode, vo
53、id *pContext, int *pLength;参 数:HHV hhv;34 摄像机句柄。HV_COMMAND_CODE CommandCode;功能代码:CMD_HVAPI_CONTROL执行HV_CONTROL_CODE定义的功能;void *pContext;指向实现功能所需参数的缓冲区。其中,功能:CMD_HVAPI_CONTROL参数为结构HVAPI_CONTROL_PARAMETER;int *pLength;参数缓冲区的大小,以字节为单位。其中,功能:CMD_HVAPI_CONTROL参数缓冲区是24字节。返回值:调用成功,返回STATUS_OK,否则返回错误代码。说 明:
54、数字摄像机的操作命令函数,通过指定不同的功能代码,执行各种摄像机的操作。其中,功能代码:CMD_HVAPI_CONTROL执行HV_CONTROL_CODE定义的功能,ORD_QUERY_LAST_STATUS_PRESENCE,具体调用方法可参照范例1;ORD_GET_LAST_STATUS,具体调用方法可参照范例2。范 例:35 /范例1:查询是否支持,获取摄像机的工作状态HV_RES_QUERY_LAST_STATUS_PRESENCE ResFeature; HVAPI_CONTROL_PARAMETER p;p.pInBuf = NULL;p.dwInBufSize = 0;p.pOutBuf = &ResFeature;p.dwOutBufSize = sizeof(ResFeature;p.pBytesRet = NULL;p.code = ORD_QUERY_LAST_STATUS_PRESENCE;int dwSize = sizeof(p;HVSTATUS status = HVCommand( hh
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 实木及实木复合地板备料工安全生产能力知识考核试卷含答案
- 加气混凝土制品工岗前基础应用考核试卷含答案
- 水力发电运行值班员安全风险知识考核试卷含答案
- 2025年空气和废气监测仪器项目发展计划
- 2025年水分湿度传感器合作协议书
- 2025年射频同轴电缆组件项目合作计划书
- 2025年光学纤维面板系列项目发展计划
- 2025 小学一年级科学下册认识水果的种子课件
- 狍子介绍教学课件
- 2026年航空发动机高温合金项目建议书
- 2025年国防科工局机关公开遴选公务员笔试模拟题及答案
- 2024-2025学年山东省济南市天桥区八年级(上)期末语文试卷(含答案解析)
- (高清版)DB44∕T 724-2010 《广州市房屋安全鉴定操作技术规程》
- 2025职业健康培训测试题(+答案)
- 供货流程管控方案
- 《实践论》《矛盾论》导读课件
- 中试基地运营管理制度
- 老年病康复训练治疗讲课件
- DB4201-T 617-2020 武汉市架空管线容貌管理技术规范
- 药品追溯码管理制度
- 脚手架国际化标准下的发展趋势
评论
0/150
提交评论