تبلیغات آموزش مطلب
وبلاگ من
نویسنـــدگان :
امین باشی (73)
موضــــوع ها :
figure (14)
line (1)
uicontrol (1)
uipanel (1)
axes (2)
Organization of Graphics Objects (2)
uimenu (2)
خودم (7)
image (2)
surface (1)
patch (1)
text (5)
light (1)
plot object (2)
area (3)
bar (2)
convolution (1)
errorbar (2)
plot (1)
surf (1)
برازش منحنی (1)
workspace (1)
evalin (1)
GUIDE (1)
dsolve (1)
لاپلاس (1)
سری فوریه (3)
حل عددی IVP (2)
حل معادلات دیفرانسیل پاره ای وابسته به زمان در یک بعد (1)
BVP (1)
حل معادلات خطی (1)
solve (1)
حل pde (5)
subs (1)
آرشیـــو :
خرداد 1388 (1)
مرداد 1386 (1)
بهمن 1385 (2)
دی 1385 (2)
آذر 1385 (1)
شهریور 1385 (6)
مرداد 1385 (6)
تیر 1385 (5)
خرداد 1385 (1)
اردیبهشت 1385 (3)
فروردین 1385 (9)
اسفند 1384 (9)
شهریور 1384 (14)
مرداد 1384 (10)
تیر 1384 (3)
لینكدونی :
MATLAB Wiki
History of Iran
لورن
آرشیو لینكدونی
لینكستان :
متمتیکا
مهندسی صنایع - مهندس امیر
مهندسی شیمی ایران
اخبار نجوم
دانلود رایگان کتاب فیزیک به زبان فارسی
وبلاگ فیزیک ایران
مجله نجوم
انجمن علمی پژوهشی نجم شمال
ماه نو
مطلب نوین
آموزش متلب
میكرو روباتیك
معماری بی نظیر
انجمن مهندسی شیمی ایران
تکنولوژی برتر
گلچین دنیای اینترنت
پروژه های جالب الكترونیك
جادوهای ویندوز
Mathworks
وب كلاس
جنون اینترنت
فرهنگستان زبان و ادب پارسی
جسنجو :
خبرنامه :
نظر سنجی :
امروز :
بازدید های امروز :
بازدید های دیروز :
كل مطالب :
كل نظرها :
كل بازدید ها :
ایجاد صفحه : - ثانیه
image2
Image2
امروز
تعدادی از ویژگیهای تابع image
كه نحت نام Data Defining the Object دسته بندی میشوند را
برسی می كنیم.
این
ویژگیها برای تعریف كردن تصویر بكار میروند
تابع
image به دو صورت سطح بالا و سطح پایین قابل استفاده است.(حتما تفاوت
زبانهای سطح بالا مثل C
، با زبانهای سطح پایین مثل اسمبلی را میدانید).
استفاده
از تابع به صورت سطح بالا یك سری ویژگی دارد
جهت y برعكس میشود.
نمای دید به [0 90] تغیر میكند.(view([0 90]))
و...
هنگام
اسفاده از تابع سطح پایین، مسقیما با خصوصیات نصویر كار میكنیم.
image('PropertyName',PropertyValue,...)
Cdata
یك ماتریس
یا یك آرایه سه بعدی كه رنگ تصویر را مشخص میكند.
image('cdata',cdata)
معادل با image(C) است.در واقع image(c) معادل سطح بالا است.
متلب(مطلب)به
3 طریق تصویر را رنگ میكند.
با توجه
به colormap
ماتریس را اندیس گذاری میكند. مثلا اگر مقدار یك درایه برابر با 15 باشد به ان
درایه رنگ 15ام از colormap
را اختصاص میدهد.
در این
حالت ویژگی CdataMapping
برابر با direct
است.
در حالت
دوم مقدار ویژگی CdataMapping
برابر با scaled
است.یعنی رنگ با توجه به ویژگی clim تعین میشود. Clim یك بردار است كه اولین درایه
آن برایر با شماره اولین رنگ در colormap و درایه دوم آخرین رنگ از colormap است.خلاصه كنم در این حالت به
بزرگترین درایه ماتریس آخرین رنگ و به كوچكترین درایه آن اولین رنگ از colormap اختصاص داده شده و با
توجه به این بقیه درایه ها رنگ میگیرند.
h=image([1 40 20]);
حالا این
دستور را امتحان كنید و تفاوت را ببینید
set(h,'CDataMapping','scaled')
حالت سوم
استفاده از ماتریس RGB
است.(به مطالب فبلی مراجعه كنید)
CdataMapping
كار این
ویژگی را توضیح دادم ( به چند خط بالاتر مراجعه كنید) فقط نكته مهم این است كه
هنگامی كه از ماتریسRGB(true
color) استفاده میكنید این ویژگی بی تاثیر است.
Xdata
و Ydata
محل قرار
گرفتن اولین رنگ را مشخص میكند. متلب همیشه یك ناحیه مربعی را رنگ میكند كه
مختصات مركز آن با توجه به این ویژگیها مشخص میشود.
مقدار پیش
فرض آن در زیر آورده شده است.
XData [1 size(CData,2)]
YData [1 size(CData,1)]
image
image
برای
نمایش تصویر استفاده میشود.
image
(C)
image
(x,y,C)
image
(...,'PropertyName',PropertyValue,...)
image
('PropertyName',PropertyValue,...)
handle = image(...)
برای
نمایش تصویر لازم است كه ابتدا ان را به صورت ماتریس در بیاوریم.
خود
ماتریس به دوحالت قابل استفاده است.
1-هر
درایه آن نشاندهنده شماره یك از از colormap باشد.
image
(floor(rand(64,64)*64))
منظور از
floor همان جز صحیح
است.
2-
ماترسی
به صورت m-by-n-by-
3
باشد كه با آنtrue color
گفته میشود.
در نوع
ماتریس m وn نشاندهنده هر پیكسل و
اندیس 3و2و1 نشاندهنده
رنگ آن پیكسل است. اندیس 1 رنگ قرمز، 2 رنك سبز و 3 آبی . به این ماتریس ، ماتریس RGB هم گفته
میشود.
برای
تبدیل كردن تصویر به ماتریس از دستور imread استفاده میكنیم.یك تصویر بر روی كامپیتر خود در نظر
بگیرید. و آدرس آن را به عنوان آرگومان
دستور
imread استفاده
كنید.
C=imread
('
**** ');
دقت كنید
كه '' را حتما استفاده كنید. اگر تصویر شما از نوع GIF باشد بهصورت
colormap(حالت اول) ذخیره میشود. اگر در تصویر شما رنگ سفید باشد به صورت آبی نمایش
داده میشود چون در colormap
پیش فرض پنجره رنگ سفید تعریف نشده است.اما اگر از یك تصویر JPG استفاده كنید.به صورت
RGB ذخیره
میشود.
برای
دیدن
تصویر بنویسید
image(C)
اگر در
محور ها دقت كنید متوجه میشوید كه در هنگام نمایش تصاویر محور y برعكس
میشود.
حالا كه
تصاویر به ماتریس تبدیل كردیم، میتوان آنها را ویرایش كرد.
clear
k2=1:100;
fig=figure;
c0=zeros
(256,1);
c255
(256,1)=255;
c255
(:,1)=255;
cf=
(0:255)';
cb=(255:-1:0)';
Co=[c0
,c255 , cf ; cf , cb , c255 ; c255 ,c0
,cb];
i=10;
while ishandle(fig)
C(k2,k2,1)=Co(i-
9,1)/255;
C(k2,k2,2)=Co(i-
9,2)/255;
C(k2,k2,3)=Co(i-
9,3)/255;
image
(C)
drawnow
i=i+1;
if i
>=778
i=10;
end
end
در این
مثال ابتدا طیف رنگ سبز تا قرمز (3*256=768)
را ایجاد شده و بعد در یك تصویر از نوع RGB به اندازه 100*100 استفاده شده
است.
نوشته های پیشین ...
هرگونه استفاده تجاری از مــطالب این سایت بصورت
كتاب٬ نشریه٬ وب و ... ممنوع میباشد
All right
reserved©2005
Amin Bashi