扑克纸牌识别

上传人:gao****ang 文档编号:212367508 上传时间:2023-05-22 格式:DOCX 页数:23 大小:572.22KB
收藏 版权申诉 举报 下载
扑克纸牌识别_第1页
第1页 / 共23页
扑克纸牌识别_第2页
第2页 / 共23页
扑克纸牌识别_第3页
第3页 / 共23页
资源描述:

《扑克纸牌识别》由会员分享,可在线阅读,更多相关《扑克纸牌识别(23页珍藏版)》请在装配图网上搜索。

1、课程名称 题目名称 学生学院 专业班级 学 号 学生姓名 指导教师摘要随着图像处理、人工智能、计算机技术的不断发展,计算机识别技术也日趋成熟,逐渐 转为使用阶段,目前计算机识别方法主要有两种:1)标记识别技术;2)基于图像处理的识别技术。第一种方法是先在识别目标上预先安设一个标记,标记可以是IC条形码等,再将目标 的信息存储在标记中,则从标记中可以识别出目标及其它相关的内容。这种方法的优点是识 别准确度高、速度快和可靠,但由于这种方法对硬件的要求,使得它存在了许多的局限性, 若应用到扑克纸牌识别当中,需要为纸牌装有一个微型的IC,这样的设备价格十分昂贵, 同时也摒弃了纸牌的实际用途,普及实用性

2、不强。基于图像处理的识别技术相比较第一种方法的优势在于不需要给识别目标添加任何辅 助设备就可以对其进行识别。应用到扑克纸牌识别当中,对目标信息的采集是非接触性的, 可以实时识别,非人工操作,工作效率高。这种方法是基于计算机视觉和图像处理技术,作 为一个软件系统,更方便维护和升级,通用性更强。存在着这几方面的优势,基于图像处理 的识别技术具有很大的发展空间。基于图像处理的纸牌识别主要包括纸牌图像预处理(倾斜校正与定位)、特征提取、特 征匹配、纸牌识别等方面的技术。系统构成如上图所示,当系统发现监视图像发生变化时, 触发图像采集,通过CCD摄像头摄取的纸牌图像,然后识别系统对纸牌图像进行一系列处

3、理从而识别出纸牌,输出识别结果。纸牌图像预处理传感器触发CCD摄像头进行图像采集后可以得到一张图像,图像中包括背景和待识的目 标纸牌,但目标纸牌在图像中并不一定是正放的,许多的时候纸牌与图像的边缘形成一定的 倾斜角度,如下图所示:因此,纸牌识别之前,必须先对目标纸牌进行倾斜校正和定位。对于整个纸牌识别系统来说,纸牌识别精确度的高低很大程度下取决于纸牌的倾斜校正 与定位精确度高低,这是十分重要的一步。纸牌形状为一矩形,纸牌是否倾斜可以以纸牌的 物理边缘是否与图像边缘倾斜为准则,若纸牌的物理边缘与图像边缘呈0或90度(平放或 正放),则纸牌没有发生倾斜,反之,则存在倾斜。根据以上分析的特点,可以利

4、用Hough变换和边缘检测结合的方法实现纸牌的倾斜校 正与定位。Hough变换是利用极坐标变换的方法,在图像中进行像素的累加,从而估算出最长直线 与图像边缘所成倾斜的角度。如下左图所示,首先在原图像中引入p、e和L三个参数,通 过p和e参数的变化可以累加出对应L的值(直线长度):利用Hough变换,可以很容易地得出在图像中最长直线的长度和该直线与图像边缘对应 所成的角度。对于大多数的纸牌来说,我们可以直接把检测出来最大的L所对应的倾斜角e 视为纸牌的倾斜,这是因为,纸牌本身拥有的一条较长边缘,而任何角度上的直线像素累加 都不能与之相比。但对于一些内部图案很复杂的纸牌,如J、Q、K和J0KER,

5、由于图案边缘复杂性的原因, Hough变换后就会产生一些非纸牌物理边缘而长度超过物理边缘的线条,此时,该线条对应 的倾斜角e就不是纸牌与图像所成的真实倾斜角度。这些复杂线条信息的存在,会对纸牌物理边缘的确认产生十分大的影响,因此,在Hough 变换之前,必须采取一些操作,最大程度地去除这些复杂的边缘信息的同时,保留纸牌的物 理边缘信息。可以在经过边缘检测的前提下,通过形态学闭操作把纸牌内部的复杂线条模糊 化,然后再对模糊化后的图像进行边缘检测,具体效果如下图:孔原始圏像b.第一次边缘检测J形态学闭操作d第二次边缘检测经过以上的步骤后,再对图像进行Hough变换,就可以准确地确认出纸牌的物理边缘

6、, 然后对纸牌进行倾斜校正与定位,Matlab程序实现如下:function poker二rectify(rgbimage)%灰度化图像%灰度化图象边缘化%形态学闭操作圆形结构体%扑克目标校正且定位函数 grey=rgb2gray(rgbimage);edl二edge(grey,sobel,b ot h);bwl二imclose(edl,s tr el(disk,20);%以上形态学操作为了模糊纸牌内部的线条结构%从而减小J,Q,K,J0KER纸牌等内部复杂边缘对定位的影响ed2=edge(bw1,sobel,b ot h); bw2=bwmorph(ed2,dila te); hough二r

7、adon(bw2,-90:90);m,n二size(hough);rotate=0;sline=0;for i=1:mfor j=1:n%对纸牌的物理边缘进行检测%结构性膨胀加强边缘效果 %-90到90度的hough变换%倾斜角值%最长直线长度if hough(i,j)sline;rotate=j-1;sline=hough(i,j);endendended3二bwmorph(ed2,clean,10);%预校正%预测校正后的目标位置%倾斜校正%定位bw3=imr otat e(ed3,- rotat e);m,n=find(bw3);rgb=imrotate(rgbimage,-rotate

8、,bilinear); poker二rgb(min(m):max(m),min(n):max(n),:); m,n二size(poker);if nmpoker=imr otat e(poker,90,bilinear);end纸牌特征提取纸牌具有很多的特征,如字符特征,花形特征,图案特征,颜色特征等,不同的纸牌具 有不同的特征。根据特征的组合,可以产生出54纸不同的纸牌。纸牌识别的第一步,必须 在待识别的纸牌中提取它所具备的特征。由于纸牌内部的图案较复杂,对其操作运算量较大,不以其作为识别的特征。而字符和 花形特征结构较为简单,易于操作,所以应该在纸牌中提取字符与花形的特征,并以这两个 特征

9、识别出纸牌。在纸牌倾斜校正与定位后,根据纸牌的固有属性,可以大概地定位出纸牌上字符与花形 的位置,然后把字符与花形粗略提取出来。n/Sm阿提取出字符与花形的大概位置后,必须对提取出的图像进行二值化,进一步提取特征。 二值化是指整幅图像像素仅有黑、白二值的图像。由于“非黑即白”的特性,二值图 像在数字图像处理中占有非常重要的地位。二值化的关键是要找到合适的阈值来区分对象和 背景。阈值选取有许多的方法,常用的阈值选取方法有:直方图双峰法、自适应局部阈值法、 最佳阈值法等。Ostu算法是最佳阈值算法的一种。Ostu算法是利用最大类间方差法,判决分析最小二 乘法的原理基础上推导得出的。它的计算步骤是先

10、计算图像的灰度直方图概率函数,然后以阈值为基准将灰度级划分为两类,Ostu算法求二值化最佳阈值的Mat lab程序实现如下:function level=ostu(IMAGE)%最大类间方差ostu算法,求最佳阈值m,n,s二size(IMAGE);if s=1image=IMAGE;endif s=3image二RGB2gray(IMAGE);endranks=256;counts=imhist(image,ranks);p=counts/sum(counts);omega=cumsum(p);mu二cumsum(p.*(O:ranks-l);mu _t 二 mu(end);%otsu类间方

11、差%原始阈值sigma2=0;T=0;h=0;Hmax=0;w0=0;wl=0;u0=0;ul=0;HSto re二zeros(l,256);for i=1:ranks图像二值化前 后效果对比。if (omega(i)=0)|(l-omega(i)=0)continue;end;wO=omega(i);wl=l-wO; u0=mu(i)/w0;u1=(mu_t-mu(i)/w1;sigma2=w0*(u0-mu _t) .2+wl*(ul-mu _t) .2 h=sigma2;HStore(i)二h;endHmax = max(HStore);isfinite_maxval = isfinit

12、e(Hmax);if isfinite_maxvalidx = mean(find(HStore = Hmax);level = (idx - 1) / (ranks - 1);elselevel = 0.0;end在字符和花形粗略定位并且二值化之后,有时会残留一些很长边缘信息。这些边缘信息 多数来自于纸牌本身的图案边缘或背景残留。由于这些线条多数与字符和花形的颜色相近, 因此在图像二值化之后仍然会保留下来。这些多余的边缘信息给特征的正确提取带来了很大 的影响,所以在字符分割之前去除这些干扰是必要的。这些边缘信息都具有连续不跳变的特性,因此可以利用这个特性对二值化图像进行扫描,当出现超过一定长

13、度不跳变的线条,把它视为干扰信息,并且把它去除。清除干扰线条的Matlab实现程序如下: function str二reduce(bwstr);%去除干扰边缘信息m,n=size(bws tr);t emp=ones(m,n);num=1;for j=l:ncount=0;for i=1:mif bws tr(i,j)=0;count二0;continue;elsecount二count+1; if count二m/3;break;endendendif count二m/3line(num)=j;num二num+1;endendfor i=l:numTfor j=1:mt emp(j,line

14、(i)=0;endendstr二logical(double(bwstr).*temp);%线条不连续%连续不跳变点数增加%连续不跳变长度超过1/3边长%记录扫描到线条位置%清除干扰边缘清除干扰 线条后分 割出字符 与花形。清除干扰线条前 后效果比较。从左至右进行扫描,当列方向上出现超过1/3边长长度不跳变的线条,把它视为干扰线条,并把它去除。这个算法对断裂较多的线条没有作用,但能够在一定程度下消除了线条对目标信息的干 扰,为纸牌识别的准确度提供一个保障。纸牌识别在识别技术中,被广泛采用的有两类特征:结构特征和统计特征。常用的结构特征主要 有:笔道密度函数、空洞和缺口、字符的特殊节点数。而常用

15、的统计特征主要有复杂指数、 粗网格特征、垂直和水平投影。纸牌中有字符和花形两种字符,字符包括A、2、3、4、5、6、7、8、9、10、J、Q、K、 JOKER十四种;而花形包括:黑桃、红桃、梅花和方片四种。不论采用结构特征还是统计特 征的匹配方法方法,均需要与一个系统预知道的标准符号模板库进行匹配。结构特征匹配的识别准确率较高,但是运算量十分大,用于符号结构较复杂的识别;统 计特征匹配识别准确率相对较低,但运算量少,适用于结构简单的符号识别。纸牌只有14 个字符和4个花形符号,而且结构较简单,这里选用统计特征匹配。对于不同的符号,其投影均不相同。符号“黑桃”的加厂 一水平投影图。0111051

16、01620因此,可以利用待识别符号投影与模板中各符号的投影求均方差,选择均方差最小(即 与待识别符号投影偏离最小)所对应的模板符号作为识别结果。在符号中,JOKER信息像素所占数目较多,可以先对其确认。在匹配前先对符号进行一 定的结构性膨胀,由于JOKER具有多个字符,在膨胀后非零像素增加的数量定会大大的大于 其它纸牌。这里设置一个临界值,当某待识别纸牌特征像素数量大于此临界值时把这张纸牌 识别为JOKER,小于临界值再与其他模板进行匹配,这样就可以不需要额外加入JOKER模板, 同时也一定程度下提高了系统的识别效率。Matlab - GUI程序实现新建一个空的GUI任务:设置菜单栏:添加菜

17、单选项菜单栏选择项映射Callback函数:exit_Callba ck(-|自文件打开0)口退出退曰recognition_Callback()new_Callback()-冒工具(辺倾關校正与定酥打團像煎度叱(唇= 像二值_扑克诣别弱戍16关于幽recitify_Callback()binary_Callback()gray_Callback()getsymstr_Callback()Menu Barabout_Callback()Cont已址Ml已门us各菜单选择项映射函数具体定义:打开(O)打开一幅图像,并且显示到窗口上。function new_Callback(hObject, e

18、ventdata, handles) global IMAGE;global POKER;global GRAY;global BW;global BWSTR;name=0;卜丿pokername,path二uigetfile(,*.bmp,;,*.jpg,;,*,tif,,,打开图像); if name=0;%没有打开图像return;endIMAGE二imread(strcat(path,name);P0KER=0;GRAY=0;BW=0;BWSTR=0;%成功打开图像%其他图像复位subplot(l,l,l),imshow(IMAGE), title(,扑克纸牌图像,);工具打开一张立件

19、(E)工具关于(也文件迥poker退出(日扑克紙牌图像查找范围(1) ;扑克紙牌识别己扑克符号模板岂图片 000.bmp /圉片 001.bmp 3 图片 002.Lmp j 图片 OCS.Lmp 厘图片 00.bmp3 图片 005,bmp3 图片 006.bmp图片007.bmp3图片 08.bmpj 图片 QQ9.bmp3 图片 010.bmpS 閣片Oil.bmp3 圈片 012.bmp3 團片 013.bmp3 関片 014.bmp文件名:|gJt 000. Lmp文件类型Q):|*.bmp打开 |“駆消“1显示纸牌图像倾斜矫正与定位(Y)对纸牌图像进行倾斜校正和纸牌定位,计算定位耗

20、时并显示。function rectify_Callback(hObject, eventdata, handles) global IMAGE;global POKER;if IMAGE=0;%未打开图像msgbox (请先打开一幅扑克图像,,,错误,,,error,);tic;%计算校正与定位用时POKER二rectify(IMAGE);%自定义函数 rectify()f toc5%设置超时时间为3秒msgbox(图像校正定位超时,错误,error);return;endtime=num2str(toc);st r=s trca t(校正与定位耗时,time,秒);subplot(l,l,

21、l),imshow(POKER), title(扑克纸牌);msgbox(str,消息);end图像二值化(B)对纸牌图像进行二值化,阈值用最佳阈值。stu算法计算得出。 function binary_Callback(hObject, eventdata, handles) global IMAGE;%全局变量global POKER;global GRAY;global BW;if IMAGE=0%未打开图像msgbox (请先打开一幅扑克图像,错误,error);else if POKER=0%未进行图像校正msgbox (请先对图像进行校正定位,错误,error);elseif GR

22、AY=0%未进行图像灰度化msgbox (请先对图像进行灰度化,错误,error);I* pokerbw二im2bw(GRAY,ostu(GRAY);%自定义函数 ostu()BW=logical(abs(double(bw)-l);subplot(l,l,l),imshow(BW), title(图像二值化);endpoker主件(巳工具关于遇倾斜校正与定位(也 團像西度化(勺主件(巳工具关于遇图像二值化團像二值化邀牌字符提取迪朴克识别(丈轻纸牌字符提取(P)提取纸牌的特征字符。function getsymstr_Callback(hObject, eventdata, handles)

23、global IMAGE;global POKER;global GRAY;global BW;global BWSTR;if IMAGE=0%未打开图像msgbox (请先打开一幅扑克图像,错误,error);else if P0KER=0%未进行图像校正msgbox (请先对图像进行校正定位,错误,error);elseif GRAY=0%未进行图像灰度化msgbox (请先对图像进行灰度化,错误,error);elseif BW=0%未进行图像二值化msgbox (请先对图像进行二值化,错误,error);elsem,n二size(GRAY);%字符粗略定位%自定义函数ostu()%清除

24、孤立点pokers tr =GRAY(2:m/2,n/20:n/5.5); bw=im2bw(pokerstr ,ostu (pokerstr); bw1=bwmorph(bw,clean);bw2=logical(abs(double(bw)-l);%二值图像反色bw3二reduce(bw2);%自定义函数 reduce()m,n=size(bw3);t emp二sum(bw3);shadow(2:n+l)二t emp;shadow(l)=0;shadow(n+2)=0;for i=2:n+1辻 shadow(i)=0&shadow(i-l)=0&shadow(i+l)=0%出现孤立线条 f

25、or j=1:mbw3(j,i-l)=0;%删除孤立线条列endendend m,n=find(bw3);BWSTR二bw3(min(m):max(m),min(n):max(n); subplot(l,l,l),imshow(BWSTR), title(纸牌特征字符);end丿 poker0 顒文件(巳工具关于迪倾斜校正与定位(也 團像西度化(勺 團像二值化(因扌卜克识别J扑克识别(R)对字符特征进行匹配识别,并且输出识别结果。 function recognition_Callback(hObject, eventdata, handles) global IMAGE;global POK

26、ER;global GRAY;global BW;global BWSTR %纸牌字符模板,34*22投影strl=6 6 6 6 8 8 10 10 10 10 8 8 8 8 10 10 8,.8 8 8 12 12 16 16 12 12 8 8 8 8 16 16 16 16; %A str2=10 10 16 16 12 12 12 12 12 12 6 6 4 4 8 8,.8 8 6 6 6 6 6 6 6 6 8 8 10 10 22 22 22 22;%2str3=22 22 14 14 10 10 8 8 8 8 8 12 12 14 14 6,.6 4 4 4 4 4 4

27、 4 4 8 8 81212 18181212;%3str4=2 2 4 4 6 6 8 8 101012 12101010 1088,.10 10 12 12 20 20 22 226 6 6 6 6 68 8;%4str5=18 18 16 16 4 4 4 4 416 1616166 6 4444,.4 4 4 4 4 4 10 12 12 16 16 12 12 2 2; %5 str6=9 9 15 15 7 7 5 5 3 3 5 5 14 14 18 18 12 12 9,.9 9 9 11 11 11 11 7 7 10 10 14 14 11 11; %6 str7=15 1

28、5 22 22 14 14 9 9 5 5 5 5 5 5 4 4 4 4 6 6,.4 4 4 4 6 6 4 4 4 4 4 4 4 4; %7 str8=10 10 16 16 10 10 6 6 8 8 6 6 12 12 14 14 14 14,.10 10 8 8 8 8 8 8 8 8 14 14 18 18 10 10; %8 str9=14 14 16 16 8 8 8 8 12 12 12 10 10 12 12 12 12,.18 18 16 164 4 44 6 66 12 12 14 14 8 8;%9str10=10 10161614 1412 12 12 1212

29、 12121212 12,.12 12 12 12121212 1212 12 12 1216 16161610 10;%10str11=13 1311115 5 55 5 5 5 5 55 5 55 5 55 5,.5 5 5 9 9 9 9 14 14 13 13 4 4; %J str12=11 11101010106 6 6 6 6 66 6 66 61010,.14 14 16 16121210101010 10 1818 1212;%Qstr13=20 20202012121010 10 1010 108 81212,.12 12 12 12101010101010 8 8 10

30、10 18 182020;%KSTR=str1;str2;str3;str4;str5;str6;str7;str8;str9;str10;str11;str12;str13;%纸牌花形模板,24*20投影 style1=4 4 6 6 8 8 12 12 16 16 16 16,.20 20 20 20 20 20 14 14 6 6 6 6; %黑桃 style2=12 12 20 20 20 20 20 20 18 18 16 16,.14 14 12 12 8 8 6 6 4 4 2 2; %红桃 style3=4 4 8 8 10 10 10 10 8 8 16 16,.20 20

31、20 20 20 20 12 12 4 4 4 4; %梅花 style4=2 2 4 4 6 6 12 12 16 16 20 20 20 20,.16 16 12 12 6 6 6 6 2 2; %方片 STYLE=style1;style2;style3;style4;if IMAGE=0 %未打开图像msgbox (请先打开一幅扑克图像,错误,error);elseif POKER=0%未进行图像校正msgbox (请先对图像进行校正定位,错误,error);elseif GRAY=0%未进行图像灰度化msgbox (请先对图像进行灰度化:错误,error);elseif BW=0ms

32、gbox (请先对图像进行二值化,错误,error); elseif BWSTR=0msgbox (请先提取图像字符,错误,error); elsesym=imclose(BWSTR,strel(disk,3); shadow=sum(sym);if max(shadow)=40result=strcat(识别结果:,JOKER); msgbox(resu lt,消息,warn);else sym=bwmorph(BWSTR,clean); shadow=(sum(sym,2); len=length(shadow); for i=2:len-1if shadow(i)=0&shadow(i+

33、1)=0 bonder1=i+1; i=bonder1; continue;end if shadow(i)1%未进行图像二值化%未提取特征%粗略估算特征面积大小%像素过多识别为为JOKER%清除孤立点%侧面投影%搜索数字符号与花形符号的分界点%检测到靠近数字一边的边界%检测到靠近花形一边的边界%取两个边界的中间作为符号分界线%数字符号%模板归一化bonder2=i; break;end end bonder=(bonder1+bonder2)/2; SYM1=sym(1:bonder,:);m,n=find(SYM1);SYM1=SYM1(min(m):max(m),min(n):max(n

34、) SYM1=imresize(SYM1,34 22);SYM2=sym(bonder:len,:);%花形符号m,n=find(SYM2);SYM2=SYM2(min(m):max(m),min(n):max(n);SYM2=imresize(SYM2,24,20);%模板归一化shadow1=(sum(SYM1,2);shadow2=(sum(SYM2,2);%字符匹配 errormean=50;sn1=0;for i=1:13%搜索最佳匹配的模板temp=STR(i,:);error=abs(shadow1-temp);error=mean(error,2);%求绝对均差if error

35、=3;sn1=0;end%花形匹配 errormean=50;sn2=0;for i=1:4temp=STYLE(i,:); error=abs(shadow2-temp); error=mean(error,2);if error=3;sn2=0;end%特征映射switch sn1case 0resul tl=不能识别出字符; case 1result1=A;case 10result1=10;case 11result1=J;case 12result1=Q;case 13result1=K;otherwise result1=num2str(sn1);endswitch sn2case

36、 1result2二黑桃;case 2%误差过大%搜索最佳匹配的模板%求绝对均差%误差过大%对应数字转成字符型result2二红桃;case 3result2二梅花;case 4result2=方片,;otherwiseresul t2=不能识别出花形;end result二strcat( 识别结果:,result2,resultl); msgbox(resu lt,,消息,warn,);endend左件(巳工具关于過 倾斜校正与定位(!) 图橡灰廃化 團像二值化(因Fj poker左件(已工具关于過纸牌特征字符纸牌字符提恥迥a 识剔皓果:黑桃5识剔皓果:黑桃5输出纸牌 识别结果识别结果心得体

37、会程序能够较准确地实现纸牌识别功能,但此识别系统对图像中纸牌的要求较为严格,摄 像时不能出现纸牌扭曲,或者摄像头与纸牌存在较大的倾斜角。在研究过程中,感觉到还有 许多可以进一步提高对纸牌识别的能力的方法值得继续研究。对于此纸牌识别系统来说,最 需要改进的地方我觉得有如下几个方面:(1)符号的定位方面。只根据符号在纸牌上的大概位置从而对符号的位置进行大致的确 定显得有些武断,若纸牌在摄像时出现一定程度的扭曲,又或者摄像并非正对纸牌 的时候,这种粗略定位的方法就成为整个系统的致命伤,因此有必要改进符号的定 位,又或者选择其他的特征;(2)特征匹配方面。此系统采用投影特征匹配的方法,虽然这种方法具有

38、运算量少的优 势,但是这种方法完全忽略了符号本身的结构特点,而只从像素点统计上对符号进 行匹配。当条件改变的时候,这种匹配方法就受到相当大的考验。例如:当摄像头 在摄影时与纸牌存在一定的倾斜角,则纸牌上的符号像素点会大大减少;又例如: 当光照条件较差时,系统不能选取最佳的阈值,导致二值化图像效果较差,也降低了这种匹配方法的实用性;再例如:遇到一些纸牌符号与一般纸牌存在一定的差别, 这种方法更无计可施。以上各种情况说明,在完全不考虑结构特征的情况下进行匹 配,系统的适用范围很小。提取结构性特征,必须先对字符进行骨架化或轮廓化。常用的特征提取方法有粗网 格特征和方向线素特征。粗网格特征是把识别字符

39、等分为NXN个网格,然后依次统 计各网格内的非背景像素数量,从而取得一个以数值表示的NXN网格特征。方向线 素特征统计在粗网格的前提下,提取每个网格的线条走向特征,然后再与预先建立 好的笔划走向集合进行匹配。若要提高准确率,更可以不对图像建立网格,而用笔 划走向元素在图像上扫描匹配。而利用这种方法能够较全面地代表了字符的信息, 实践性更强。首先在程序中根据字符笔划的四个基本方向,可以相应定义水平、垂 直、45倾斜、拐角四种线素方向,如下图所示:ABCD笔划走向集音在字符轮廓或骨架图像上进行像素扫描,并把像素点的八邻域与笔划走向元素匹配, 在该点上记录其笔划走向特征值。当然,采取结构性特征匹配比

40、采用统计特征匹配 运算量大得多;字符骨架化(3) 颜色识别方面。在现实中,JOKER分为黑色和红色两种,在本系统中,没有考虑颜 色方面的因素,因此对于黑色和红色的JOKER是没有办法区分的。这个问题可以采 取HSV颜色模型过滤的方法解决。HSV模型中,H、S、V分别代表颜色的色调、饱 和度和亮度分量,它可以独立地感知各种颜色分量的变化。利用HSV颜色模型对字 符先进行过滤,可以过滤出黑色部分。由于纸牌的符号只有红色和黑色两部分,因 此在对某一纸牌进行识别前可以先对其进行基于颜色的分流,红色为红桃或方片, 黑色为黑桃或梅花,这样不单可以解决不能区分黑色与红色JOKER的问题,同时也减少了花形匹配的次数,提高了系统的效率,流程图如下:是是否否是是是HSV颜色模型过滤是否识别 出字符?是否识别 出字符?是否为JOKER?是否为JOKER?是否识别出黑 桃、梅花?是否识别出红 桃、方片?4 是纸牌图像预处理特征符号粗提取黑色红色不能识别出结果识别出结果参考文献1 楼顺天/于卫/闫华梁MATLAB程序设计语言出版社:西安电子科技大学出版社;2 徐飞/施晓红MTALAB应用图像处理 出版社:西安电子科技大学出版社;3 任超/欧吉坤/阳仁贵在测量软件开发中MATLAB的应用出版社:测绘通报;4 史忠科/曹力 图像检测与分析 出版社:科学出版社;

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!