error using imsubtract
2 ビュー (過去 30 日間)
古いコメントを表示
I've been using imsubtract, i want to replace the background with black, but why that appear only in black ... no image object .. what is wrong ...?
0 件のコメント
回答 (3 件)
Alex Taylor
2011 年 9 月 12 日
Megah,
I'd also recommend that you use the MATLAB minus operator instead of imsubtract to perform elementwise subtraction on two images:
image3 = im2double(image1) - im2double(image2)
The imadd and imsubtract functions are old and predate support for integer math in base MATLAB.
The MATLAB math operators are better maintained and in general will exhibit better performance:
>> a = rand(4000,4000); >> b = rand(4000,4000);
>> tic; for i = 1:100; imsubtract(a,b); end; toc
Elapsed time is 17.827151 seconds.
>> tic; for i = 1:100; a-b; end; toc
Elapsed time is 8.206314 seconds.
- Alex.
0 件のコメント
Wolfgang Schwanghart
2011 年 8 月 18 日
Hi Megah, apparently both variables don't have the same class. Try
image3 = imsubtract(im2double(image1),im2double(BWfinal))
[edited according to WRs suggestion]
3 件のコメント
Pramod Bhat
2011 年 8 月 25 日
convert them to the same class. both the images shud be in the same format.
0 件のコメント
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!