qt+halcon开发相机拍照软件步骤
近期一直在进行相机拍照、录像等音视频方面的软件开发,分享一些开发过程中的经验给大家,避免大家少走弯路,提供一些有用的思路。
一、相机拍照软件界面如下:
二、核心功能:
2.1 多相机设备的加载,读取对应相机的分辨率列表,拍照图片格式可以选择JPG,BMP,PNG等。
2.2 相机图片能调整对应的亮度、对比度、伽马、饱和度、白平衡、色调等常见参数。
2.3 相机拍照图片允许自定义保存位置,预览刚拍照的图片。
2.4 支持识别拍照图片中的条码、二维码等数据。
2.5 支持相机图像参数的保存和加载
三、QT项目搭建关键点
3.1 项目添加halcon相关的库支持,设置项目编译器:MSVC+VS2017+64位进行编译,运行项目时候需要将halcon.dll等文件拷贝到运行目录下。
3.2 使用QCameraInfo可以读取多个相机和对应分辨率数据。
3.3在Halcon中使用OpenFramegrabber("DirectShow", 1, 1, 0, 0, 0, 0, "default", 8, "rgb", -1, "false",...)方法打开相机连接,然后使用SetFramegrabberParam(hv_AcqHandle, "brightness", hTuple);等方法设置相机的亮度、对比度等参数。
3.4 通过GrabImage(&ho_Image, hv_AcqHandle);方法抓取图片,转换图片为QImage格式后传递给QT界面进行处理。
3.5 QT程序获取到Halcon抓取到的相机图片后,可进行原图展示,识别条码,识别二维码,识别文字等等处理。
四、界面功能展示