請問 Matlab 矩陣過大秀不出來怎麼辦?? |
尚未結案
|
spawnpighead
一般會員 ![]() ![]() 發表:5 回覆:6 積分:2 註冊:2005-03-06 發送簡訊給我 |
|
㊣
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:261 回覆:2302 積分:1667 註冊:2005-01-04 發送簡訊給我 |
|
spawnpighead
一般會員 ![]() ![]() 發表:5 回覆:6 積分:2 註冊:2005-03-06 發送簡訊給我 |
以下是code
從matlab的help裡面quadtree範例得來
I = imread('test_picdsm_1024.bmp'); S = qtdecomp(I,.4); blocks = repmat(uint8(0),size(S)); for dim = [1024 512 256 128 64 32 16 8 4 2 1]; numblocks = length(find(S==dim)); if (numblocks > 0) values = repmat(uint8(1),[dim dim numblocks]); values(2:dim,2:dim,:) = 0; blocks = qtsetblk(blocks,S,dim,values); end end blocks(end,1:end) = 1; blocks(1:end,end) = 1; imshow(I), figure, imshow(blocks,[])run完之後就會出現像之前PO過那張圖上的blocks的矩陣 現在問題就在點他兩下打不開 無法得知裡面的內容 麻煩版主解答了 感謝 發表人 - spawnpighead 於 2005/08/10 00:50:22 |
pioztm
一般會員 ![]() ![]() 發表:1 回覆:3 積分:0 註冊:2005-02-01 發送簡訊給我 |
|
㊣
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:261 回覆:2302 積分:1667 註冊:2005-01-04 發送簡訊給我 |
|
fusung
中階會員 ![]() ![]() ![]() 發表:26 回覆:169 積分:99 註冊:2003-11-25 發送簡訊給我 |
如此大的矩陣是沒辦法一次顯示出來的,因為錯誤訊息已經告訴你 不支援元素超過524288,不妨只顯示你有興趣的資料。 例如只想看第一個sub-block 8x8的資料可以用下列指令 >> blocks(1:8,1:8) 如果真的想看全部資料,就將該矩陣切成較小的block(其中元素個數<524288) 分批顯示囉!
------
The first step toward proving things for yourself is to understand how others have done it before! |
spawnpighead
一般會員 ![]() ![]() 發表:5 回覆:6 積分:2 註冊:2005-03-06 發送簡訊給我 |
抱歉抱歉 小弟這陣子沒有上來這個聖壇
沒注意到大家幫我解答 實在是十二萬分的罪惡
應該是版主寄信給我我才知道
在此向大家道歉 orz 至於我的問題 我用了一個應該不是很好的方法解決
我先把矩陣(文字檔)讀進來blocks裡
然後把blocks儲存成一張jpg圖檔
在自己用BCB讀圖把每個pixel值讀出來
讀到的值(0 & 255)我就可以拿來應用了
這個笨方法提供給大家知道一下 ^^" 雖然我的問題是解決了 至於幾位大大提供的方法
察看矩陣的部分內容 試過了是可行的
只是我的應用需要整個矩陣來做 還是非常感謝您的回應 至於版主所題 blocks點兩下一樣出現如圖的訊息
Cannot display variables with more than 524288 elements.
您試試看找一張1024*1024的圖讀進來
不知道會是什麼樣的結果
不然我試著上傳這張圖好了 只是技術不佳 不知道會不會成功 最後還是再說一次抱歉 並且感謝各位幫我解答 感激不盡 orz
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |