二值图像(Two valued image).docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
二值图像(Two valued image)

二值图像(Two valued image) / / --------------------------------------------------------------------------- / /定义ARGB像素结构 typedef联盟 { ARGB颜色; 结构 { 字节蓝; 字节的绿色; 字节的红; 字节α; }; } argbquad,* PARGBQuad; / / --------------------------------------------------------------------------- / /获取二值图像数据的字节图数据地图,骨架像素是否为黑色 无效getdatamap(const BitmapData *数据,BitmapData *地图,布尔blackpixel) { 1 /字节图边缘扩展字节,便于处理数据的边缘像素 地图-宽度=数据-宽度+ 2; 地图-高度=数据-高度+ 2; 地图-步幅=地图-宽度; 地图- scan0 =(void *)新字符[图-步幅*地图-高度+ 1 / + 1防最末字节越界]; 字节* PS =(字节*)数据- scan0; 字节* PD0 =(字节*)地图- scan0; 字节×PD = 0 +地图-大步; 字节* PT = PD; 国际srcoffset =数据-跨数据-宽* sizeof(argbquad); 单元的x,y; / /如果骨架像素为黑色,获取异或字节图 如果(blackpixel) { 为(y = 0;Y 数据高度;Y + + + = srcoffset,PS) { *钯+ + =×PS ^ 255; 为(x = 0;x 数据宽度;X + +,PS + = sizeof(argbquad)) *钯+ + =×PS ^ 255; *钯+ + = *(PS:sizeof(argbquad))^ 255; } } / /否则,获取正常字节图 其他的 { 为(y = 0;Y 数据高度;Y + +,*钯+ + = *(PS:sizeof(argbquad)),PS + = srcoffset) { 为(x = 0,*钯+ + =×PS;x 数据宽度;X + +,*钯+ + =×PS,PS + = sizeof(argbquad)); } } PS =钯-地图- 大步; 为(x = 0;x 地图宽度;X + + + + = *,* PD0 Pt + +,*钯+ + =×PS + +); } / / --------------------------------------------------------------------------- / /按结构元素模板模板制作字节掩码数组面具 / /模板低3字节的低3位对应结构元素,如下面的结构元素: / /水平垂直十字方形其它 / /○○○○●○○●○●●●○●○ / /●●●○●○●●●●●●●●● / /○○○○●○○●○●●●○●● / /用模板分别表示为:0x000700,0x020202,0x020702,0x070707,0x020703 无效gettempletmasks(DWORD样板,DWORD面具[ ]) { 为(int i = 2;我 = 0;我,模板 = 8) { 面具[我] = 0; (单位为J = 4;J;J = 1) { 面具[我] = 8; 如果(模板和J)面具[我] | = 1; } } } / / --------------------------------------------------------------------------- 无效erosion_dilation(BitmapData *数据DWORD样板,布尔blackpixel) { BitmapData地图; getdatamap(数据、地图、blackpixel); pargbquad PD =(pargbquad)数据- scan0; 字节* PS =(字节*)地图。 scan0大步+地图; 宽度=(int)数据-宽度; int高度=(int)数据-高度; 国际dstoffset =数据-步幅宽度* sizeof(argbquad); int值= blackpixel?0:255; x,y; 如果(模板= = 0x0700)/水平结构元素单独处理,可提高处理速度 { 为(y = 0;Y<高度;Y + +(字节*)PD + = dstoffset,PS + = 2) { 为(x = 0;x<宽度;X + + + + + + PD,PS) { 如果(*(DWORD *)PS和0x010101) 钯- 蓝色=绿色=钯钯- 红=价值; } } } 其他的 { DW

您可能关注的文档

文档评论(0)

jgx3536 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档