Re: [討論] 針對一個50*50的矩陣,想要畫出框框已回收
※ 引述《hohoww (瞇瞇看~瞇挺了沒)》之銘言:
: 想請問大家
: 針對一個50*50的矩陣,內容預設全部都是zeros
: 經過運算之後,
: 可能會在好幾個點出現1值,但不一定是相鄰,
: 請問有什麼方式,能夠作出最小的框把所有的1框起來呢?
: 不知道是否matlab有提供 給他兩個座標點,
: 就能夠在畫面上出現以這兩點為,左上跟右下的矩形呢?
來回個旁門左道的寫法
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
A = rand(10, 10) > 0.95
row = sum(A);
r1 = filter(1, [1 -1], row);
r2 = fliplr(filter(1, [1 -1], fliplr(row)));
row = double((r1.*r2) > 0);
col = sum(A');
c1 = filter(1, [1 -1], col);
c2 = fliplr(filter(1, [1 -1], fliplr(col)));
col = double(((c1.*c2) > 0)');
col*row
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
col*row就是你要的1矩陣
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.243.6
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
MATLAB 近期熱門文章
PTT數位生活區 即時熱門文章