[]
matlab im2double
imread'le bir resim aldım, im2double'la double'a cast edip üstünde uğraştım filan bunu yeniden biraraya getirerek görmek istiyorum resmi. double2im gibi bişey yaparak yani bu double değerleri görünebilecek bir şekile sokmak istiyorum. ama double2im diye bişey yokmuş. nasıl yapabilirim bunu?
orijinal = imread('resim.bmp');
doubleorji = im2double(orijinal);
buraya kadarını yapmışsınız.
imshow(doubleorji) deyince resmi gösterir. ya da
orijinal2 = 255*doubleorji;
dediğinizde tekrar 0-255 arasına ölçeklenir resim.
doubleorji = im2double(orijinal);
buraya kadarını yapmışsınız.
imshow(doubleorji) deyince resmi gösterir. ya da
orijinal2 = 255*doubleorji;
dediğinizde tekrar 0-255 arasına ölçeklenir resim.
- elcezire exclusive (28.11.08 17:16:55)
imshow'la da göstermeye çalışmıştım da, picture is too big to fit on screen, displaying at %6 gibi bişey yazmıştı. eksik yaptığım bişeylerden kaynaklanıyordur bu büyük ihtimal zira seçtiğim resim de küçük. 15*15'lik bi resim seçsem bile böyle bir uyarı verip incecik bir çizgi basıyor ekrana. şu 255'le çarpma işlemini deneyince de aynısı oldu da, önceki değerlerim benim virgüllü sayılardı ve 255'le çarpınca yine böyle virgüllü sayılar geldi. ama düzgün bir resim için bu sayıların tamsayı olması gerekiyor bildiğim kadarıyla, öyle bir sorun ortaya çıkıyor.
- psyche (28.11.08 19:03:05)
im2uint8'miş aradığım şey.
- psyche (30.11.08 01:21:16)
evet 255'le çarpınca im2double'daki yuvarlama hatalarından kaynaklanan virgüllü sayılar çıkar ama çok sorun yaratmaz. im2uint8'in yaptığı şey de int(255*resim)'dir büyük ihtimalle. built in olanı kullanmak daha sağlıklı tabi.
- elcezire exclusive (30.11.08 02:31:43)
1