扛水泥的技法与实践-----《相机篇1》
来源:互联网 发布:泳装视频网络歌曲 编辑:程序博客网 时间:2024/06/09 23:52
本文以映美精相机为例子,使用官方SDK打开相机,并调用相机自带的功能属性调节,最后将相机生成的图片格式转换成halcon所需的数据结构。所用环境与文件为VS2015、映美精官方文件ICImagingControl34.dll、halcon动态库halcondotnet.dll。
一、使用的类
1、ICImagingControl34.dll中的ICImagingControl类。该类包含相机的主要功能包括使能设备、管理相机缓存等等。
2、ICImagingControl34.dll中的VCDIDsXXXX。VCDID开头的一般是以属性相关的,例如曝光、增益、对比度等等。
二、实现过程
1、新建项目,并拉一个简易的界面。如图:
pictureBox作为相机ICImagingControl与HWindowControl的父容器。
2、pictureBox添加子容器ICImagingControl与HWindowControl
HWindowControl HwinContor = new HWindowControl();ICIamgControl.Parent = pictureBox1;HwinContor.Parent = pictureBox1;
3、打开相机
ICImagingControl ICIamgControl = new ICImagingControl();Device[] Devices = ICIamgControl.Devices; //获得主机上所有映美精的相机Device Device = Devices[0]; //此处只开第一个ICIamgControl.Device = Device.Name; //该控件指定设备ICIamgControl.MemoryCurrentGrabberColorformat = ICImagingControlColorformats.ICY8;ICIamgControl.Width = pictureBox1.Width;ICIamgControl.Height = pictureBox1.Height;
4、Live模式显示相机
ICIamgControl.LiveStart(); ICIamgControl.Show(); //相机控件显示并覆盖halcon控件
5、获得相机属性的方法,此处直接复制官方文档
TIS.Imaging.VCDPropertyItem Brightness = null;private TIS.Imaging.VCDRangeProperty BrightnessRange;private TIS.Imaging.VCDSwitchProperty BrightnessSwitch;Brightness = icImagingControl1.VCDPropertyItems.FindItem(TIS.Imaging.VCDIDs.**VCDID_Brightness**);//加粗可自行换成其他属性BrightnessRange = (TIS.Imaging.VCDRangeProperty)Brightness.Elements.FindInterface( TIS.Imaging.VCDIDs.VCDElement_Value + ":" + TIS.Imaging.VCDIDs.VCDInterface_Range);BrightnessSwitch = (TIS.Imaging.VCDSwitchProperty)Brightness.Elements.FindInterface( TIS.Imaging.VCDIDs.VCDElement_Auto + ":" + TIS.Imaging.VCDIDs.VCDInterface_Switch);if (BrightnessSwitch == null){ MessageBox.Show("Automation of brightness is not supported by the current device!");}
6、设置属性BrightnessRange.Value = Value;(Value在上述所得范围内就可以)
————-下次更新触发及数据转换部分
阅读全文
0 0
- 扛水泥的技法与实践-----《相机篇1》
- 扛水泥的技法与实践-----《相机篇2》
- 地球是水泥做的
- 符合水泥行业的需求
- 蛭石于水泥的使用
- 工业相机与普通相机的区别
- 工业相机与一般相机的区别
- 工业相机与普通相机的区别
- 工业相机与普通相机的区别
- 工业相机与普通相机的差别
- 携程梁建章:我的鼠标+水泥为什么成功
- 水泥遮板模具的优势何在
- 基于JAVA的水泥三维图像特征提取系统设计与实现 之一 JAVA 3D学习笔记
- 应用软件的模块化技法
- Scintilla的高级技法
- Scintilla的高级技法
- Markdown的一些技法
- OpenCV与相机的关系
- 同步并发操作
- ORB特征点检测和匹配
- 阿里、百度、搜狐等互联网公司面试经验总结!
- express-11-ejs
- 深入理解python中的闭包和装饰器
- 扛水泥的技法与实践-----《相机篇1》
- 7.8 Hibernate:内置生成器 – select
- JVM优化——针对“垃圾回收”的失效,带来的性能降低和内存溢出
- Android7.0 使用系统相册打开指定图片
- 独立scope及其绑定策略
- sqlserver特殊表
- 深度学习--windows 下安装mxnet
- Protobuf 总结
- Python 学习日知录(六)- 简单好用的命令行框架cmd