海康VisionMaster算法平台介绍


前言

随着科技的不断发展,机器视觉这门技术的应用也越来越广泛,成本逐渐下降,门槛日益降低,本文就介绍了海康威视公司的机器视觉应用开发软件平台VisionMaster(简称VM)。


一、VisionMaster是什么?

VM算法开发平台是海康机器人自主开发的机器视觉软件,致力于为客户提供快速搭建视觉应用、解决视觉检测难题的算法工具, 能满足视觉定位、尺寸测量、缺陷检测以及信息识别等机器视觉应用。

二、VisionMaster能干什么?

VM算法开发平台提供了千余个完全自主研发的图像处理算子与多种交互式开发工具,支持多种图像采集设备, 能够满足机器视觉领域中定位、测量、识别、检测等需求。

1.定位

通过寻找物体或者工件特征,获取工件在相机坐标系下的像素坐标,再通过标定转换,将像素坐标转换到执行机构坐标系中,赋予执行机构眼睛(执行机构可为三轴或四轴模组,四轴或六轴机器人等)。最终实现高精度纠偏,定位,引导贴合等应用。

2.测量

通过边缘拟合,圆弧拟合,直线查找等方式获取被测物的几何信息,进而转换为实际尺寸,可实现高速、高精度、高稳定性测量,在各种行业中均有应用。

3.识别

识别主要有一维码识别,二维码识别,字符OCR识别,物体分类等。应用场景有快递条码识别分拣,图书条码识别分拣,自动扫码上料下料,条码绑定产品信息,车牌号自动检测,生产日期检测校对,商场产品种类识别等场景。

4.检测

一般为缺陷检测,针对具体被检测物体,缺陷有划痕,刮伤,白点,脏污,油污等等不同种类,缺陷检测目前为机器视觉应用中最难的应用场景,往往缺陷不明显,种类繁多,常规算法在复杂缺陷识别场景中难以胜任,可采用深度学习或传统算法+深度学习解决实际项目。

三、为什么选VisionMaster?

目前机器视觉算法平台五花八门,例如学习门槛较高的开源算法库opencv,学习门槛次之的德国公司MVTec的halcon,还有诸如美国公司康耐视的visionpro,国内海康,大华,维视,奥普特,汇川等等公司均有开发相关的视觉算法平台。之所以推荐海康算法平台,有下面几个原因:

1.价格,国内企业大部分为价格敏感型企业,同样的产品,成本越低越好。在一般应用的场景,海康的算法平台已经足够完成项目需求,在目前(2022年)海康的算法平台价格在上述提到的几家公司中是具备成本优势的。(市面上也有一些免费的算法平台,笔者尚未上手研究,暂时不予置评)

2.学习成本,VM兼顾基础版和进阶版选手,基础版可实现零代码开发,对新手友好,学习成本低,快速开发部署;进阶版具备足够的开放性,可结合高级语言进行二次开发,实现定制化开发,学习成本相对较高。

3.服务,背靠海康,售后和技术支持还是有保障的。

总结

本章对VisionMaster做简要介绍,后面会对算法平台使用方法做详细介绍。

海康官方介绍
海康V社区

欢迎大家加入VisionMaster交流群:660763727

### 海康威视VM平台扫码功能实现方案 海康VisionMaster (VM) 平台不仅作为视觉处理单元,还能够与其他工业自动化组件无缝对接。针对扫码功能的具体实现,该平台提供了全面的支持和优化措施。 #### 1. Modbus通信协议的应用 为了使扫码器能与VM平台及其他生产设备有效交互,通常采用Modbus TCP/IP或RTU协议来建立稳定的连接[^2]。这种设置允许实时获取并解析条形码或二维码中的信息,进而触发相应的控制动作或是更新数据库记录。 #### 2. 数据采集与处理流程 当扫描仪读取到目标物体上的编码后,会立即将这些原始数据传送给VM系统。随后,VM利用内置算法对收到的信息进行解码分析,并将其转换成易于理解和操作的形式。此过程涉及到了图像识别技术以及特定行业标准下的编解码逻辑。 #### 3. 集成功能模块 考虑到实际应用场景可能存在的多样性需求,如不同类型的条码格式支持、高速连续拍摄模式等特殊要求,VM平台上集成了丰富的预设选项供用户选择配置。此外,还有专门面向物流分拣、仓储管理等行业定制的功能包可供下载安装。 #### 4. 开发者资源辅助 对于希望进一步自定义开发的企业而言,官方提供的详尽API文档和技术支持服务显得尤为重要。开发者可以根据业务特性编写专属应用程序接口(API),从而更好地适应个性化的工作流设计;同时,“即插即用”的样例代码库也大大缩短了项目的研发周期。 ```python import modbus_tk.modbus_tcp as mbtcp from hikvision import VisionMasterClient def read_barcode(vm_ip='192.168.1.10', port=502): master = mbtcp.TcpMaster(host=vm_ip, port=port) vm_client = VisionMasterClient(master) try: barcode_data = vm_client.read_register('barcode_input') decoded_info = decode(barcode_data) return decoded_info except Exception as e: print(f"Error reading barcode: {e}") raise def decode(raw_bytes): # Implement decoding logic based on the expected format of barcodes. pass ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Mono_Space

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值