can any one tell me how to convert an image of type 'unit8' to the image of type 'float'.basicaly i am following a book of 'Digial Image Processing Using Matlab' where they try to enhance a gray image .following is the code.thanks in advance
古いコメントを表示
w=fspecial('laplacian',0);
f=imread('aa.jpg');
g1=imfilter(f,w,'replicate');
imshow(g1,[])
%as we get only a possitve image so he first try to convert the image type from 'unit8'to 'float'.so he write like this%
f2=tofloat(f);
%at here i am getting an error as [UNDEFINED FUNCTION OR METHOD 'tofloat' FOR INPUT ARGUMENTS OF TYPE 'unit8'].at this stage i could not understand what to do.%
%forther code is writen like this %
g2=imfilter(f2,w,'replicate');
imshow(g2,[])
%then he subtract the images like%
g=f2-g2;
imshow(g);
採用された回答
その他の回答 (3 件)
Steve Eddins
2013 年 3 月 11 日
0 投票
tofloat is a function provided with the book you are reading. You can find it in Appendix C on page 806.
6 件のコメント
jagannath mishra
2013 年 3 月 12 日
Walter Roberson
2013 年 3 月 12 日
'unit8' should be 'uint8' and likewise 'unit16' should be 'uint16'
jagannath mishra
2013 年 3 月 13 日
Walter Roberson
2013 年 3 月 13 日
編集済み: Walter Roberson
2013 年 3 月 13 日
Change your code where you currently have
table={'unit8',tosingle,@im2unit8
'unit16',tosingle,@im2unit16
'int16',tosingle,@im2int16
'logical',tosingle,@logical
'double',tosingle,identity
'single',tosingle,identity};
to become
table={'uint8',tosingle,@im2uint8
'uint16',tosingle,@im2uint16
'int16',tosingle,@im2int16
'logical',tosingle,@logical
'double',tosingle,identity
'single',tosingle,identity};
Image Analyst
2013 年 3 月 13 日
unit and uint are two different words. The middle two characters are swapped.
玉山 邓
2021 年 1 月 29 日
dont like
Kiranraddi morab
2013 年 3 月 13 日
0 投票
hello sir i'm too getting the same error how to use [f,revertclass]=tofloat(f)... Undefined function 'tofloat' for input arguments of type 'uint8'. MATLAB has this function or what is the problem please help me out
4 件のコメント
Image Analyst
2013 年 3 月 13 日
Did you see Steve's Answer about it being included with the book?
Kiranraddi morab
2013 年 3 月 13 日
yeah thank you
PRABAKARAN K
2019 年 10 月 24 日
編集済み: PRABAKARAN K
2019 年 10 月 24 日
dear the tofloat is an user defined fuction its not exist in MATLAB
the code for tofloat given in that book is bellow which s a user defined function
f u n c t i o n [ out , revert clas s ) = tofloat ( in )
%TOF LOAT Convert image t o floating point
% [ OUT , REVERTCLASS ] = TOFLOAT ( I N ) c o n v e r t s the input image IN t o
% float ing - point . If IN is a d o u b le o r single imag e , then OUT
% equals I N . O t h e rwise , OUT equals IM2SINGLE ( I N ) . REVERTCLASS is
% a f u n ct ion handle t h at can be used to c o n v e rt back to t he class
% of I N .
i d e n t i t y
t o s ingle
@ ( x ) x ;
@im2sing le ;
table = { ' u i n t8 ' , t o s i n g l e , @im2 uint8
' u int 1 6 ' , t o s i n g l e , @im2u in t 1 6
' int 1 6 ' , t o s i n g l e , @im2 int 1 6
' logical ' , t o s in g l e , @log ical
' double ' , identity , identity
' s ingle ' , ident i t y , identit y } ;
c la s s l n d e x = f ind ( st rcmp ( c lass ( in ) , t ab le ( : , 1 ) ) ) ;
if isempt y ( c l as s l nd e x )
e r r o r ( ' Unsupported input image c l a ss . ' ) ;
end
o u t = t a b l e { c l a s s l ndex , 2 } ( in ) ;
r e v e r t c l a s s = t able { c l a s s l ndex , 3 } ;
Walter Roberson
2019 年 10 月 24 日
It is a function that is defined in the book the user was using.
muhammad alli
2016 年 6 月 13 日
編集済み: Walter Roberson
2019 年 10 月 24 日
0 投票
1 件のコメント
Walter Roberson
2016 年 6 月 13 日
The reference is to a book "Computational Physics: A Guide For Beginners Looking To Speed Up Their Computation" that appears to have been written by the poster.
カテゴリ
ヘルプ センター および File Exchange で Images についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!