作者maxgary (無心)
看板MATLAB
標題[問題]GUI的slider值與圖片透明化設定
時間Sat Jan 7 21:12:11 2012
小弟是matlab新手 最近在使用matlab做影像處理
可是碰到幾個問題 希望有前輩可以解惑
1.
我使用slider來選取我要的圖片
slider值設定在0~25
用callback來讀取position值
position=num2str(get(handles.slider1,'Value'));
set(handles.text1,'String',position);
i=position
i1=i+71
bmp_name=['photo_' num2str(i) '.bmp'];
可是當運行時
i1的值都會變得很奇怪
當position=1時 輸出的i值會變成49
而i1會變成120
此時num2str(i) 會變成 49 50 0三個值
但是如果不做i1的運算
i值都很正常 會在0~25之間
是設定上有問題嗎?
2.
當我將圖片做edge detection後
是否能夠將處理後的圖片邊緣(白色)部分塗上別的顏色
並且將處理後的圖片黑色部分透明化後疊在原來的圖片上?
上色部分目前毫無頭緒
而透明化的部分
我參考網路上的做法 使用alpha
X=imread('photo.bmp');
h=imshow(X)
F=size(X);
G=ones(F(1),F(2));
G(X(:,:,1)<1)=0;
set(gca,'visible','off','color','none')
set(h,'AlphaData',G)
可是做出來的圖片跟原來一樣 完全沒有效果
疊圖部分 因為我想將處理後的圖片透明化
這樣是否用hold就可以了?
感謝各位前輩
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.116.16.223
1F:推 diva:1的問題是出在position是string不是number 因此i也是string 01/07 23:14
2F:→ diva:string+71會跑出什麼東西 說實在我也不知道 01/07 23:15
3F:推 diva:2我也想知道圖片怎麼透明化 01/07 23:17
4F:→ maxgary:所以不能用position做運算嗎? 感謝 01/07 23:38
5F:推 Raymond0710:1. i = str2num(position) 是不是要改這樣? 01/08 02:21