之前介绍的直方图反向投影算法,在编码过程中是通过在查询图像中设置感兴趣区域,作为模板图像,并直观,实现方法比较挫,于是想到了OpenCV中是否提供了鼠标和键盘事件的控制方法,通过鼠标事件任意选择感兴趣区域作为模板图像,结果到网上一搜索,发现OpenCV中果然提供了相关接口,但是网上提供的例程多数是基于C语言接口的,使用的图像容器还是比较早版本的IplImage,针对Mat容器的还比较少,于是就参考了一下其代码,对其进行了改写,通过鼠标事件实现了屏幕截图功能,并可以通过键盘事件对感兴趣区域进行平移以及放大和缩小操作,同时将截取的图像保存下来,具体实现如下,供感兴趣的同学参考一下这样只需要对之前Blog中提供的代码进行简单修改就可以实现前面所说的功能。
链接如下