原本略显神秘的,比较“高科技”的机器视觉,没想到有一天,我也可以体验一把,采用微软MSRDS软件做了一个入门实验。实验内容是:用PC摄像头,判断物体的蓝色色块中心是否偏离摄像头视野的X轴中央位置,如果偏离,则乐高NXT电机会带动摄像头向反方向偏转,以消除偏差。如上图。
实验视频:
[全屏欣赏]
微软高清摄像头网址:[url]http://item.taobao.com/item.htm?id=8373607177&_u=5con830c7ad。
乐高9797+9695机器人套件,网址:
[url]http://item.taobao.com/item.htm?id=12941550436&。
下面介绍MSRDS软件中,与机器视觉相关的两个服务元件,WebCam与ColorSegment。见下图。
把WebCam服务元件的属性设定其Configuration为[Set initial configuration]。点开WebCamState与ImageSize项目,设定视觉摄像头的长宽像素为320×240像素。
ColorSegment元件的作用是依据颜色特征来把视野中的物体划分为色块,ColorSegment服务元件的属性设定其Configuration为[Set initial configuration]。点开Partners项目,设定其WebCam为既有的WebCam服务元件。点开Settings项目,设定阀值Threshold为1.25,最小色块MinBlobSize为50 。
按下菜单工具栏中的启动按钮,或者按F5热键,运行DSS服务。
在Run窗口,逐个寻找各行“Service started”的记录,点击其左侧的“-”符号便可看到对应的服务元件网址,现在要找到ColorSegment元件的浏览器监*控网页,并点击它。我发现有些浏览器显示的ColorSegment元件浏览器监*控网页,对它进行操作时,有些问题,后来我用了360安全浏览器,问题解决了。
随之出现的浏览器页面,左侧的Source Image栏可看到摄像头的影像,我取出LEGO9797机器人套件中的蓝色球,放在白纸上,让摄像头辨识。
下面左侧窗口是Source Image栏,显示是摄像头视野里的真实物体;右侧窗口是Segmented Image栏,显示物体辨识后的色块。
按下监*控网页的Control栏的[Start]按钮,让摄像头开始进入侦测模式。在左侧的Source Image栏显示的蓝色球区域内,用鼠标拉出一矩形框,包含住蓝色球的大部分色块。
在Color Definitions栏的Add Entry位置,填入自订的色块名称,比如blue,并按下[Add]按钮,在按下[Add]按钮前不可移动蓝色球,以免定义到的色块颜色值错误。
按下[Add]按钮后,右侧的Segmented Image栏才会出现辨识的色块,之前这个栏里显示“Segmented Image Available”的字样。此时,您移动摄像头视野里的蓝色球,辨识出的色块应该也会跟随蓝色球移动,这样就可以确定,通过跟踪色块的方法,来跟踪蓝色球,是否可行。[/SIZE]
全文见博客,网址:[url]http://www.eefocus.com/zhang700309/blog/12-06/279959_543cc.html[/SIZE]