Imwrite image in matlab


(zozo85) #1

لدي استفسار في برنامج الماتلاب
عند قراءة صورة وطباعتها بواسطة الدالة imwrite تتغير أبعاد الصورة(Dimensions)
هل توجد طريقة للمحافظة على حجم العرض اي Dimensions للصورة بعد استخدام هذة الدالة
ففي المرفق عند قراءة الصورة 1 وتم طباعتها في الصورة 2 تتغير ابعاد الصورة من
3.34سم الي 4.52 سم ما السبب في دلك ,علماً بان حجم الصورتين (128*128 بكسل)
لكن في العرض تظهر الصورة الثانية اكبر ؟ واريدها ان تتطهر بنفس العرض لطباعتها
وشكراً


(Ahmed) #2

[CENTER]الصورة من المفروض تظهر بنفس الابعاد
المشكل يكون في حجم الصورة “كم كيلو بايت مثلا”

للتاكد من ان التحويل يتم بصفة عكسية تماما
في حالة صور TIF
قم بتحويلها بنفس خصائص الصورة الاولية

جرب هذا


clc,clear all,close all
x = imread('1.tif');
infos=imfinfo('1.tif');
imwrite(x,infos.Colormap,'2.tif','Compression',infos.Compression,'Resolution',[infos.XResolution,infos.YResolution],'RowsPerStrip',infos.RowsPerStrip);

[/center]


(zozo85) #3

نعم الصورة تظهر بنفس الابعاد وب 512*512 بكسل في كلتا الصور
ولكن عند نسخ الصورة في ملف wodr لطباعتها يتغير حجم العرض فقط وتظهر بحجم اكبر
عند فتح الصورتين ببرنامج الرسام تظهر بنفس العرض تماماً, ولكن عند نسخ الصورة التانية في الورد تظهر بحجم كبير كيف يمكنني التحكم بحجمها الاصلي بدون فقد اي معلومة اي بعرض 4.43سم لكل من الارتفاع والعرض

ملاحظة : الحجم الذي اقصدة هو حجم العرض على جهازي وليس بالبكسل


(Ahmed) #4

[CENTER]المشكل لا علاقة له بالكود او بماتلاب

لما تنسخ الصورة الجديدة في الوورد
قم بتغيير ابعادها في الوورد نفسه

بالتوفيق
[/center]


(zozo85) #5

شكراً لك DzArticles