PTT
Submit
Submit
選擇語言
正體中文
简体中文
PTT
MATLAB
[討論] 選擇性複製三維矩陣(不用迴圈)
作者:
andgitisaac
(AndGiTiSaaC)
2016-01-04 15:33:01
想請問,現在有個 m*n*3 三維矩陣HSV,要做影像處理
目標是
如果HSV(:,:,1)元素的值大於門檻,那就把該x、y位置
的矩陣值給複製到另一個三維矩陣light(三層都要複製)
目前我的寫法是:
(index 是符合門檻值的 元素位置)
light = zeros(m,n,3);
for k = 0:2
light(index + k*m*n) = HSV(index + k*m*n);
end
想問各位大大有沒有不要用迴圈的寫法?
作者:
celestialgod
(天)
2016-01-04 15:56:00
http://pastebin.com/sTieXbdU
作者:
sunev
(Veritas)
2016-01-04 18:42:00
迴圈只有三次的話,其實也不會慢到哪裡去真的要求效能,可以用內建profile功能找瓶頸。你的index應該是find過的,搞不好差在這裡?light=repmat(HSV(HSV(:,:,1)>0,1),[1 1 3]);不過用matlab做即時會不會太拼了
作者:
celestialgod
(天)
2016-01-05 09:20:00
s大,你這樣1~3維都一樣喔
作者:
sunev
(Veritas)
2016-01-05 10:07:00
搞錯了,其實語法就錯了...XDlight=bsxfun(@(x,y)x.*(y>0),HSV,HSV(:,:,1));不確定會不會比樓上的寫法快就是了我的意思是,如果已經到了要從這種地方擠效能的程度那matlab可能不太適合
作者:
celestialgod
(天)
2016-01-05 10:29:00
s大寫出我想寫的東西了XDD,不過那樣出來不是3維矩陣,要在用cat,速度會更慢而已沒事,我誤會了QQ,S大是對的bsxfun用的很漂亮
繼續閱讀
[問題]幫行矩陣裡面的值編號
aerodan
[問題]多執行緒可以從工作管理員調整嗎??
ProTrader
[運算] 請問程式可以跑一次,卻無法跑第二次?
irene54510
Re: [問題] 從圖片中擷取一個橢圓
KevinT
Re: [討論] structure array 初始化大小
celestialgod
[討論] 詢問ode45 變數回傳
qaz3869153
[問題] 從圖片中擷取一個橢圓
q1232431
濾除陣列不要的雜訊
b19910925
Re: [問題] eval 語法問題
KevinT
Re: [問題] video timestamp 擷取問題
KevinT
Links
booklink
Contact Us: admin [ a t ] ucptt.com