gusucode.com > matlab程序语言实现的水准网平差程序,使用于测绘人员 > 一种基于极大值稳定区域的文本定位方法matlab源码程序/毕业设计/代码/re_define.m
function [mserboxes]=re_define(mserStats,mserboxes,grayImage) for k=1:10 for i=1:numel(mserStats) for j=(i+1):numel(mserStats) broder=[mserboxes.BoundingBox]; ax=broder((i-1)*4+1); ay=broder((i-1)*4+2); width1=broder((i-1)*4+3); height1=broder((i-1)*4+4); bx=ax+width1; by=ay+height1; mx=broder((j-1)*4+1); my=broder((j-1)*4+2); width2=broder((j-1)*4+3); height2=broder((j-1)*4+4); nx=mx+width2; ny=my+height2; if (mx<=ax && my<=ay && nx>ax && nx<=bx && ny>ay && ny<=by) | (mx>=ax && mx<bx && my<=ay && nx>=bx && ny>ay && ny<=by) flag=1; elseif (ax<=mx && ay<=my && bx>mx && bx<=nx && by>my && by<=ny) | (mx<=ax && my>ay && my<=by && nx>=ax && nx<bx && ny>=by) flag=1; elseif (mx>=ax && mx<bx && my<ay && nx<=bx && ny>ay && ny<=by) | (mx>=ax && mx<bx && my>=ay && my<by && nx>bx && ny<=by) flag=2; elseif (mx>=ax && mx<bx && my>=ay && my<by && nx<=bx && ny>by) | (mx<ax && my>=ay && my<by && nx>ax && nx<=bx && ny<=by) flag=2; elseif (ax>=mx && ax<nx && ay<my && bx<=nx && by>my && by<=ny) | (ax>=mx && ax<nx && ay>=my && ay<ny && bx>nx && by<=ny) flag=2; elseif (ax>=mx && ax<nx && ay>=my && ay<ny && bx<=nx && by>ny) | (ax<mx && ay>=my && ay<ny && bx>mx && bx<=nx && by<=ny) flag=2; elseif (mx<=ax && my<=ay && nx>=bx && ny>=by) | (ax<=mx && ay<=my && bx>=nx && by>=ny) flag=4; else flag=0; end [mserboxes]=recalculator(mserboxes,flag,i,j,ax,ay,bx,by,mx,my,nx,ny); end end end for i=1:numel(mserStats) if mserboxes(i).BoundingBox==[0,0,0,0] mserboxes(i).Count=0; end end % [mserboxes]=draweveryone(mserboxes,mserStats,grayImage); end