版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于图像处理的象棋棋盘识别摘要:基于图像处理的象棋棋盘识别是象棋机器人软件的重要组成局部,其核心工作是棋盘图像二值化和棋子识别。针对棋盘全局二值化存在的问题,提出了基于相邻像素灰度差阈值的棋盘图像二值化方法;针对棋子文字方向任意的现象,运用象棋文字的识别作为颜色识别异常的补充。实验结果说明,该方法提高了棋盘识别的效率。Chess-boardrecognitionbasedonImageProcessingisanimportantpartofachessrobotsoftwartsystem.It’skeyproblemsarebinarizationofchess-boardimageandcharacterrecognition.Tosavetheproblemcausedbyfullchess-boardbinarizationway,thebinarizationmethodbasedonthedifferencethresholdofneighborpixels’gray-levelisgiven.Totreattherandomofacharacter’sdirection,Thecharacterrecognitionwastakenasthesupplementtoexcep-tionsofcolorrecognition.Theproposedmethodimprovestheefficiencyofthechessboardrecognition关键词:棋盘识别;颜色识别;文字识别;灰度差阈值;年轮统计Keywords:chessboardrecognition;colorrecognition;characterrecognition;thresholdofgrayscales’difference;annualringstatistic;1引言中国象棋变化多端,趣味无穷,是流传了一千多年的优秀游戏,是中华文化的精粹之一。随着机器人技术的开展,机器人的功能越来越丰富,娱乐机器人的研究已经成为一个重要的方向。象棋机器人是娱乐机器人的一种,在CCD摄像机的监视下,使人机下棋过程非常类似于人与人之间的对弈,更具有人性化和亲切感。本文介绍的系统是象棋机器人的视觉局部,能识别出当前棋盘的状态,提供应机器人下棋软件进行进一步推理。1.1棋盘的预处理棋盘识别软件的处理流程是棋盘图像的二值化、棋子检测和棋子文字识别。其中,二值化和棋子文字识别是关键。棋盘图像二值化的目的是将棋盘背景与棋子及网格线别离,以便进行棋子的检测和识别。目前图像二值化方法很多,可划分为全局阈值、局部阈值法、动态阈值法。全局阈值法实现简单,速度快,对于具有明显双峰直方图的图像效果明显,但对于光照不均匀的图像效果欠佳,抗噪能力差。局部阈值法能处理较为复杂的情况,但往往忽略了图像的边缘特征,容易出现伪影现象,且当窗口宽度较大时,算法的速度将会受到很大影响。动态阈值法充分考虑了像元的邻域特征,能够根据图像的不同背景情况自适应地改变阈值,可较精确地提取出二值图像,但它过渡地夸大了像元的邻域灰度的变化,会把不均匀灰度分布的背景分割到目标中去,带来许多不应出现的假目标。在象棋机器人系统中装有照明灯,为图像捕捉提供光源。即使这样,由于光照不均匀有时所捕捉的图像仍存在一定的阴影、反光现象,致使图像灰度层次较多。假设采用全局阈值法的二值化图像,结果出现某些背景变黑而一些棋子模糊和网格线断线的现象,这直接影响了后续的棋子和异物检测。在象棋机器人系统中装有照明灯,为图像捕捉提供光源。即使这样,由于光照不均匀有时所捕捉的图像仍存在一定的阴影、反光现象,致使图像灰度层次较多。灰度图像如图3(a)所示。假设采用全局阈值法的二值化图像,结果出现某些背景变黑而一些棋子模糊和网格线断线的现象,如图3(b)所示。这直接影响了后续的棋子和异物检测。2.棋盘定位流程图:棋盘棋子的定位:阈值的选取:im_all=imread('xqplg.jpg');imc=imcrop(im_all);imr=imc(:,:,1);img=imc(:,:,2);imb=imc(:,:,3);imrr=imr(:);imgg=img(:);imbb=imb(:);c=double([imrrimggimbb])/256;scatter3(imrr,imgg,imbb,15,c);棋子定位imqz=(imr>180&img>180 &imb>180);imc=imcrop(imqz,[csls 3030]);qzN=sum(sum(imc));棋子识别——红色像素统计imqr=(imr>150&img<150&img>70&imb<200&imb>110);imcr=imcrop(imqr,[csls 3030]);qzR=sum(sum(imcr));下棋过程中棋子放置方向的任意性给文字识别带来了困难。基于统计决策论的统计特征可以丧失方向信息,很适合棋子识别。统计决策论的要点是提取待识别模式的一组统计特征,然后按照一定准那么把所确定的决策函数进行分类判决。汉字的统计模式识别就是将字符点阵看作一个整体,从该整体上经过大量统计所得特征,用尽可能少的特征模式来描述尽可能多的信息。所采用的方法有特征统计的方法、整体变换分析法、几何矩特征、笔划密度特征、字符投影特征、外围特征、微结构特征和特征点特征等。本文针对象棋棋子文字,提出了3种基于统计特征的棋子文字识别方法,很好地解决了文字的方向问题。3文字识别在开局或者是进行残局的对弈时,需要识别各位置棋子的颜色及文字,以便建立起棋子的状态矩阵。文字的识别可以根据字符结构,抽取字符特征,然后根据这些特征构造编码器,进行编码识别的方式[4-6],但是一旦文字的方向发生变化,这种方式将很难处理。因此,使用基于年轮统计的方法[1],该方法的优点是与文字的方向无关,一旦确立了每个象棋文字的特征值,就可以快速地识别文字。为了加快文字识别的速度,在每个棋子上的圆形凹槽均填充为与棋子相同的颜色。针对捕获的图像,首先进行颜色的识别,以记录各棋子有效位置的颜色信息,然后,对于存在棋子的有效位置进行分割,分割出来的每一个矩形图片均进行文字识别。其步骤如下。1)滤波。这里采用中值滤波,每个像素点根据其周围的像素点的RGB值进行平均,以抑制随机噪声,并且能够很好地保存边缘信息,原图和滤波后的效果如下。2)颜色增强。对于红颜色或者绿颜色分量进行增强,其饱和度增强0.2左右,使得颜色信息在图像中进一步呈现,以提高根据颜色进行二值化的成功率。3)二值化。这里的二值化指的是红色或者绿色保存,其他颜色变为白色,以下说明均以红色为例。将图1(b)按照表1所列的区间进行按照红色的二值化所得到结果如图2(a)所示。由于颜色区间是按照宽范围来选择的,因此将有局部灰色和黄色被保存下来,事实上在RGB颜色空间中,黄色是由红色叠加绿色得来的,而灰颜色的三种颜色分量的值相差不大,因此设定阈值来去除掉黄颜色和灰颜色。条件为:如果RG<60,那么认为不可能是红色;如果G≥110,那么认为不可能是红色。根据这个条件进行红颜色的二值化结果如图2(b)所示。4)提高比照度,并进一步剔除掉红色。在步骤3)中所得到的图片线条边缘还有局部浅红存在,不利于文字识别,通过提高图像的比照度,使得这一局部颜色变为红色,而红色变为黑色,以便于进一步别离,如图3(a)所示。此时将图片中的红色剔除掉,结果如图3(b)所示。5)圆形检测。圆形的检测方法主要有基于Hough变换(HoughTransformation,HT)的累积方法和基于弧线几何特征的检测方法[8],这些方法具有普适性,计算量却很大。本例中的圆形具有其特殊性,因此考虑计算量更小的方法。根据步骤4)所得到的图片中圆形可能不是完整的,但不影响确定圆心的位置。分割得到的图片本身就是一个正方形的结构,将图片数据的0行0列作为坐标原点,如图4所示,h和w分别为图片的高度和宽度,很显然h和w是相等的。以坐标原点为圆心,以图片宽度的1/2作为半径画出圆弧,只需要记录圆弧上第一个和最后一个发生颜色突变的点,就可以确定圆弧与圆的交点,有了交点就可以确定通过圆心和坐标原点的直线。依此方法再以(0,h)或(h,h)或(h,0)作为圆心画出圆弧同样也可以确定一条直线,两条直线的交点即为圆心的坐标。实际中,由于得到的圆形不一定是封闭的,所采集的两个突变点就可能不在圆上,这时确定的圆心可能就是错误的。因此根据不同的半径增加所画圆弧的个数,得到多组圆上的点,经过比拟分析去掉错误点,得到圆心的位置。由圆心的坐标和前期工作中得到的圆上的点,就可以确定整个圆的位置。6)过轮数计算。年轮统计法是根据过轮数特征构造编码器对文字进行识别。该方法结合了一定的棋子文字结构且与方向无关。过轮数的详细算法步骤请参考文献[1]。根据过轮数的计算,可以得到当前棋子的文字。一旦确定了棋子的文字,和前期确定的颜色信息,就可以建立起初始的棋子状态矩阵。从而为后续的人机对弈提供快速的检测方式。4.总结和展望:本文所提出的基于邻像素差阈值的棋盘图像二值化方法,计算量小、二值化效果好、且能适应较宽的光线条件;基于统计特征的棋子文字识别方法具有方向无关性,很好地适应了棋子方向任意的实际情况。在下棋过程中,为进一步提高处理速度,可先做相邻棋盘图像的差分,在二值差分图上检测变化位置,只限定在当前二值图的变化局部进行检测和识别,可大大缩短处理时间。在具体应用中由于棋子文字字体的不同,文中基于文字连通数与孔数的识别方法和基于年轮统计的识别方法中的具体特征值可能不能直接使用,但方法的思想是可以借鉴的。在一些字体中,某种单一的特征可能不能将各文字有效区分,这时可以融合几种特征,如有些字体的士、卒、车的连通域数和孔数都是1和0,此时可通过增加1/4R过轮数的特征进行识别。本文所提出的基于颜色和文字识别协同工作的棋盘识别方法,相比于单一棋子的文字识别来说,大大降低了计算量,提高了棋盘识别的速度,并且具有很好的识别率。参考文献:[1]杜俊俐,张景飞,黄心汉.基于视觉的象棋棋盘识别[J].计算机工程与应用,2007,43(34):220-222.[2]陶霖密,徐光枯.机器视觉中的颜色问题及应用[J].科学通报,2001,46(3):178-190.[3]Colorconversionmathandformulas[EB/OL].[2009-07-04].[4]严国莉,黄山,李岱漳,等.印刷体数字快速识别算法在身份证编码数字识别中的应用[J].计算机工程,2003,29(1):178-179.[5]齐永锋,火元莲.一种基于肤色的人脸检测与定位方法[J].计算机应用,2023,29(3):785-788.[6]赵志诚,蔡安妮.图像颜色矢量量化算法[J].北京邮电大学学报,2007,30(5):77-81.[7]杨枝灵,王开.VisualC++数字图像获取、处理及实践应用[M].北京:人民邮电出版社,2003:553-572.[8]于中,徐文立,陈峰.边缘
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 深度解析(2026)《GBT 294-2015滚动轴承 三点和四点接触球轴承 外形尺寸》
- 碳排放核算员岗前安全生产规范考核试卷含答案
- 石英晶体元件装配工安全综合考核试卷含答案
- 墨水墨汁制造工安全培训模拟考核试卷含答案
- 热浸镀工安全演练竞赛考核试卷含答案
- 形象设计师岗前安全技能考核试卷含答案
- 尿素装置操作工岗前技术实操考核试卷含答案
- 数字技术驱动农业经济韧性供应链协同优化方案
- 某家具厂家具生产标准细则
- 沃森肿瘤与临床肿瘤医生对小细胞肺癌治疗方案选择的一致性剖析:基于多维度对比与临床实践验证
- 老年护理伦理课件
- 五方面人员考试试题及答案
- 2025年医院麻、精药品培训考试题试题与答案
- 2025年安全员c证试题库及答案
- 《“1+X”无人机摄影测量》课件-项目二 无人机航空摄影及航摄成果质量检查
- 2025年湖北省中考生物、地理合卷试卷真题(含答案解析)
- 网络与信息安全管理员(网络安全管理员)三级理论提纲练习试题附答案
- 《二氧化碳捕集原理与技术》 课件 第六章 集中排放二氧化碳捕集技术
- 2025年中国干细胞医疗行业发展前景预测与投资战略规划分析报告
- 专家评审意见表模板
- 2025年河南机电职业学院高职单招语文2019-2024历年真题考点试卷含答案解析
评论
0/150
提交评论