boundaries(BW, conn, dir)冈萨雷斯图像处理源代码.doc

boundaries(BW, conn, dir)冈萨雷斯图像处理源代码.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
boundaries(BW, conn, dir)冈萨雷斯图像处理源代码

function B = boundaries(BW, conn, dir) %BOUNDARIES Trace object boundaries. % B = BOUNDARIES(BW) traces the exterior boundaries of objects in % the binary image BW. B is a P-by-1 cell array, where P is the % number of objects in the image. Each cell contains a Q-by-2 % matrix, each row of which contains the row and column coordinates % of a boundary pixel. Q is the number of boundary pixels for the % corresponding object. Object boundaries are traced in the % clockwise direction. % % B = BOUNDARIES(BW, CONN) specifies the connectivity to use when % tracing boundaries. CONN may be either 8 or 4. The default % value for CONN is 8. % % B = BOUNDARIES(BW, CONN, DIR) specifies the direction used for % tracing boundaries. DIR should be either cw (trace boundaries % clockwise) or ccw (trace boundaries counterclockwise). If DIR % is omitted BOUNDARIES traces in the clockwise direction. % Copyright 2002-2004 R. C. Gonzalez, R. E. Woods, S. L. Eddins % Digital Image Processing Using MATLAB, Prentice-Hall, 2004 % $Revision: 1.6 $ $Date: 2003/11/21 14:22:07 $ if nargin 3 dir = cw; end if nargin 2 conn = 8; end L = bwlabel(BW, conn); % The number of objects is the maximum value of L. Initialize the % cell array B so that each cell initially contains a 0-by-2 matrix. numObjects = max(L(:)); if numObjects 0 B = {zeros(0, 2)}; B = repmat(B, numObjects, 1); else B = {}; end % Pad label matrix with zeros. This lets us write the % boundary-following loop without worrying about going off the edge % of the image. Lp = padarray(L, [1 1], 0, both); % Compute the linear indexing offsets to take us from a pixel to its % neighbors. M = size(Lp, 1); if conn == 8 % Order is N NE E SE S SW W NW. offsets = [-1, M - 1, M, M + 1, 1, -M + 1, -M, -M-1]; else % Order is N E S W. offsets = [-1, M, 1, -M]; end % next_search_direction_lut is a lookup table. Given the direction % from pixel k to pixel k+1, wh

文档评论(0)

yan698698 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档