[問題] 矩陣問題

看板MATLAB作者 (詹姆士布雷克)時間12年前 (2012/06/19 11:54), 編輯推噓1(1010)
留言11則, 3人參與, 最新討論串33/34 (看更多)
設A=300x300的一個矩陣 而A矩陣內假設有隨機5個點 而想在這五個隨機點都加入一個矩形大小的框框 而我使用的一個方法是 設框框大小為50*50 那我寫法就是如下: C=A(x1-S1:x1+S1,y1-S2:y1+S2) 其中(x1,y1)就是隨機的五個點的其中一個座標 而(S1,S2)就是我們所設的框框大小的一半 就會變成中心點往上下左右各延伸25個pixel 但這會有問題,若框框大小遇到奇數,即使用了floor函數 也有可能會產生少了1 pixel的問題, 請問有任何辦法是已經知道框框大小 直接把那框框套進去已知道的隨機座標點 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.122.248.152

06/19 11:59, , 1F
為什麼會少一個pixel ?
06/19 11:59, 1F

06/19 12:01, , 2F
我覺得偶數邊長的 kernel 才需要擔心 XD
06/19 12:01, 2F

06/19 12:02, , 3F
若 size 是 -(2n+1)x(2n+1) , 那 region = -n:n
06/19 12:02, 3F

06/19 12:03, , 4F
且 C = A(x1 + region, y1 + region)
06/19 12:03, 4F

06/19 12:04, , 5F
偶數的話則看原po怎麼定義。 另外要有防錯機制 index>0
06/19 12:04, 5F

06/19 12:41, , 6F
哈哈 因為好像是如果框框裡面的是49*37
06/19 12:41, 6F

06/19 12:42, , 7F
我的s1=49/2 s2=37/2 好像很難定義說是不是正確
06/19 12:42, 7F

06/19 12:42, , 8F
那框框裡面大小不一定是整數阿哈哈 這樣我往上減
06/19 12:42, 8F

06/19 12:43, , 9F
和往下減好像有機會出現少一個pixel 哈哈
06/19 12:43, 9F

06/19 12:49, , 10F
d大那個size那邊我看不太懂,為什麼要是2n+1
06/19 12:49, 10F

06/19 12:55, , 11F
哈哈 我懂了奇數了 恐怕要再想一下更快的方法了
06/19 12:55, 11F
文章代碼(AID): #1Ft_WFhW (MATLAB)
文章代碼(AID): #1Ft_WFhW (MATLAB)