| 5 | 1/1 | 返回列表 |
| 查看: 2500 | 回復(fù): 8 | ||
| 當(dāng)前只顯示滿足指定條件的回帖,點(diǎn)擊這里查看本話題的所有回帖 | ||
dlwxtj鐵桿木蟲 (著名寫手)
|
[求助]
for循環(huán)語句的加速優(yōu)化求助! 已有3人參與
|
|
|
此程序?yàn)橐欢螆D像處理算法(大小為960*1280像素的圖片),想通過改變逐個(gè)像素的方法來改變圖像,但運(yùn)行速度極慢,想請高手幫忙優(yōu)化下,不勝感激。。 for a=1:94; d(a)=1; end for r=1:1280; for k=1:960; m1(k,r)=0; for a=1:94; if map(k,r)==1 & a<=84; %其中map為一幅圖像的二進(jìn)制圖像。 mm1(a)=d(a)*50; else mm1(a)=d(a)*20; end m1(k,r)=m1(k,r)+mm1(a); end end end i=0; for r=1:1280; for k=1:960; M1(i+k,i+k)=m1(k,r); end i=i+k; end |
鐵桿木蟲 (著名寫手)
木蟲 (正式寫手)
|
LZ是不是代碼沒貼全?從給出的部分看,全1向量d沒存在意義,定義后沒改過數(shù)值,那么mm1(a)=50沒必要*d(a)。就算有用也不需要用for定義,用d=ones(94,1)就行了。 最后一段,M1是個(gè)尺寸大得嚇人的方陣,行(列)數(shù)是1到960的累加,先把這個(gè)累加數(shù)算出來,循環(huán)前用全0或全1之類的命令定義出一個(gè)臨時(shí)的M1可以加速,否則每循環(huán)1次MATLAB都因?yàn)榫仃嚦叽绺淖円匦路峙湟槐閮?nèi)存地址。 |
至尊木蟲 (著名寫手)
驃騎將軍

榮譽(yù)版主 (知名作家)
小木蟲浪子
|
盡量改為向量化處理,比如: for a=1:94; d(a)=1; end 可以改為d(1:94)=1;如果你d在前面未定義,就直接用d=ones(1,94); for r=1:1280; for k=1:960; m1(k,r)=0; for a=1:94; if map(k,r)==1 & a<=84; %其中map為一幅圖像的二進(jìn)制圖像。 mm1(a)=d(a)*50; else mm1(a)=d(a)*20; end m1(k,r)=m1(k,r)+mm1(a); end end end 可以改為: m1=zeros(1280,960);% if m1 has been defined previously, try m1(1:1280,1:960)=0; 下面的循環(huán)很麻煩,看不懂,自己考慮進(jìn)行改進(jìn),其實(shí)不用這樣的循環(huán),如果沒理解錯(cuò)的話,map里面有多少個(gè)1,就循環(huán)for a=1:94; ... ; end多少次,你可以直接算有多少個(gè)1,然后直接乘或者加就好了。 for r=1:1280 for k=1:960 for a=1:94 if map(k,r)==1 & a<=84; %其中map為一幅圖像的二進(jìn)制圖像。 mm1(a)=d(a)*50; else mm1(a)=d(a)*20; end m1(k,r)=m1(k,r)+mm1(a); end end end |

| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研] 07化學(xué)280分求調(diào)劑 +4 | 722865 2026-03-23 | 4/200 |
|
|---|---|---|---|---|
|
[考研] 一志愿華東理工大學(xué)081700,初試分?jǐn)?shù)271 +4 | kotoko_ik 2026-03-23 | 5/250 |
|
|
[考研] 材料/農(nóng)業(yè)專業(yè),07/08開頭均可,過線就行 +3 | 呵唔哦豁 2026-03-23 | 4/200 |
|
|
[考研] 一志愿南航材料專317分求調(diào)劑 +3 | 炸呀炸呀炸薯?xiàng)l 2026-03-23 | 3/150 |
|
|
[考研] 306求調(diào)劑 +9 | chuanzhu川燭 2026-03-18 | 9/450 |
|
|
[考研] 求老師收我 +3 | zzh16938784 2026-03-23 | 3/150 |
|
|
[考研] 070300,一志愿北航320求調(diào)劑 +3 | Jerry0216 2026-03-22 | 5/250 |
|
|
[考研] 307求調(diào)劑 +11 | 冷笙123 2026-03-17 | 11/550 |
|
|
[考博] 招收博士1-2人 +3 | QGZDSYS 2026-03-18 | 4/200 |
|
|
[考研] 280求調(diào)劑 +11 | 咕嚕曉曉 2026-03-18 | 12/600 |
|
|
[考研] 278求調(diào)劑 +9 | 煙火先于春 2026-03-17 | 9/450 |
|
|
[考研] 307求調(diào)劑 +3 | 余意卿 2026-03-18 | 3/150 |
|
|
[考研] 332求調(diào)劑 +3 | 鳳凰院丁真 2026-03-20 | 3/150 |
|
|
[考研] 一志愿天津大學(xué)化學(xué)工藝專業(yè)(081702)315分求調(diào)劑 +12 | yangfz 2026-03-17 | 12/600 |
|
|
[考研] 化學(xué)求調(diào)劑 +4 | 臨澤境llllll 2026-03-17 | 5/250 |
|
|
[考研] 288求調(diào)劑 +16 | 于海海海海 2026-03-19 | 16/800 |
|
|
[考研] 317求調(diào)劑 +5 | 申子申申 2026-03-19 | 9/450 |
|
|
[考研] 材料學(xué)求調(diào)劑 +4 | Stella_Yao 2026-03-20 | 4/200 |
|
|
[考研] 材料工程專碩調(diào)劑 +5 | 204818@lcx 2026-03-17 | 6/300 |
|
|
[考研] 0703化學(xué)調(diào)劑 +3 | 妮妮ninicgb 2026-03-17 | 3/150 |
|