[問題]GUI圖形處理已回收
前面問過jeff大大,謝謝他的回答,讓我對GUI有進一步的了解
可是當我在對我讀進來的影像作處理的時候
發生問題
說明一下我的架構
左邊是listbox,listbox下面有個按鈕,右邊有兩個axes1(未處理影像放這裡)和
axes2(處理過的影像放這裡)
我的目標:想要點一下按鈕,讓處理過的影像顯示在axes2
以下是我的code
---------------------------------------------------
function pushbutton1_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
a = dir('*.jpg') %假設圖檔為JPEG檔
for i = 1:size(a,1) % 取得幾個圖檔
picname{i} = a(i).name; % 將圖檔的名字放入cell內
end
set(handles.listbox,'String',picname) % 這裡將圖檔的名字設定到listbox內
X = get(handles.listbox,'Value'); % 取得第幾個圖
pic = imread(a(X).name); % 讀圖此行,以下是我自己寫的
eh=histeq(pic1);
axes(handles.axes2);
imshow(eh);
卻跑出錯誤訊息
??? Error using ==> iptcheckinput
Function HISTEQ expected its first input, I, to be two-dimensional.
Error in ==> histeq at 71
iptcheckinput(a,{'uint8','uint16','double','int16','single'}, ...
Error in ==> hw>pushbutton1_Callback at 135
eh=histeq(pic);
Error in ==> gui_mainfcn at 96
feval(varargin{:});
Error in ==> hw at 42
gui_mainfcn(gui_State, varargin{:});
Error in ==>
guidemfile>@(hObject,eventdata)hw('pushbutton1_Callback',hObject,eventdata,guidata(hObject))
??? Error while evaluating uicontrol Callback
-------------------------------------------------------
平常我在練習
>>p=imread('man.tif');
>>ph=histeq(p);
>>imshow(ph);
這樣圖是跑得出來
用了GUI卻跑不出來
希望有人可以回答,感激不盡!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.171.48.42
※ 編輯: jeep168917 來自: 218.171.48.42 (04/24 13:20)
→
04/24 21:48, , 1F
04/24 21:48, 1F
→
04/25 09:35, , 2F
04/25 09:35, 2F
→
04/25 10:19, , 3F
04/25 10:19, 3F
→
04/25 23:58, , 4F
04/25 23:58, 4F
→
04/25 23:58, , 5F
04/25 23:58, 5F
→
04/25 23:59, , 6F
04/25 23:59, 6F
→
04/26 00:00, , 7F
04/26 00:00, 7F
→
04/26 00:01, , 8F
04/26 00:01, 8F
我的檔名是 demo
??? Error using ==> demo
Too many input arguments.
Error in ==>
guidemfile>@(hObject,eventdata)demo('listbox_Callback',hObject,eventdata,guidata(hObject))
??? Error while evaluating uicontrol Callback
然後我關掉跑出來程式的視窗,再按一次上面的綠色三角形
他就要我更改matlab directory 或者 add to path
我點add to path 就可以跑成功了
可是這樣就失去我要讓使用者自行選擇資料夾的原意
不好意思,麻煩了!
※ 編輯: jeep168917 來自: 218.171.59.227 (04/26 00:09)
→
04/26 15:40, , 9F
04/26 15:40, 9F
→
04/26 15:40, , 10F
04/26 15:40, 10F
→
04/26 21:34, , 11F
04/26 21:34, 11F
→
04/26 23:21, , 12F
04/26 23:21, 12F
→
04/27 13:28, , 13F
04/27 13:28, 13F