تبلیغات آموزش مطلب
وبلاگ من
نویسنـــدگان :
امین باشی (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
وب كلاس
جنون اینترنت
فرهنگستان زبان و ادب پارسی
جسنجو :
خبرنامه :
نظر سنجی :
امروز :
بازدید های امروز :
بازدید های دیروز :
كل مطالب :
كل نظرها :
كل بازدید ها :
ایجاد صفحه : - ثانیه
نگانیو کردن عکس
اگر
بخواهیم یک
عکس سیاه و
سفید را
نگاتیو کنیم
چی کار باید
کرد؟
با
تمام نرم
افزراهای
پردازش تصویر
به راحتی میتوانید
این کار را
انجام
دهید.امروز میخوایهم
یاد بگیریم با
مطلب این کارو
انجام بدیم.
اولین
کار ایجاد یک
پنچره برای
این کاره
figure('unit','pixel','pos',[50 100 950 600])
a1=axes('unit','pixel','pos',[50
150 400 400],'vis','off');
a2=axes('unit','pixel','pos',[500
150 400 400],'vis','off');
uicontrol('unit','pixel','pos',[225
50 50 25],'string','start','callback','alg(x,a2)');
uicontrol('unit','pixel','pos',[675
50 50 25],'string','exit','callback','close all');
من
این پنجره را
برای وضوح 1024*768
تنظیم
کردم.حالا
باید عکس مورد
نظر را وارد محیط
مطلب کنیم.
x=imread('pic.bmp');
مطلب
تصویر را به
دو حالت ذخیره
می کند.الان با
حالت RGB کار میکنیم. سه
خط بعدی تصویر
را به حالت RGB
تبدیل میکنند.
if ~isrgb(x)
x=ind2rgb(x);
end
و
حالا نمایش
تصاویر
y=x;
image('parent',a1,'cdata',x)
image('parent',a2,'cdata',y);
حالا
باید یک تابع
بنویسیم که
تبدیل مورد
نظر رو روی
عکس انجام
بدهد.
function alg(x,a2)
[m,n,k]=size(x);
yy=[];
hy=image('cdata',yy,'parent',a2);
for i=1:m
for j=1:n
if x(i,j,1)== 0 & x(i,j,2)== 0
x(i,j,3)== 0;
yy(i,j,=[1
1 1];
else
yy(i,j,=[0
0 0];
end
end
set(hy,'cdata',yy,'parent',a2)
drawnow
حتما همه میدانید
که دستورات
بالا مربوط به
یک فایل جداگانه
به اسم alg.m است.
در
حالت RGB هر تصویر
به صورت یک
ماتریس m*n*3
ذخیره میشود.m,n
شماره پیکسل
است.در هر m,n سه
درایه وجود
دارد که رنگ
پیکسل است.
خط
سوم یک تصویر
تهی تعریف می
کند و خط
چهارم آن را
نمایش میدهد.با
کمک این تصویر
نگاتیو شدن
تصوی را به
صورت سطر به
سطر نمایش
دهیم.حتی میتوانیم
به صورت پیکسل
به پیکسل این
کار را انجام
دهیم اما
برنامه کند میشود.
چون
تصویر ما سیاه
و سفید است می
توانستیم شرط
برنامه را به
صورت
if
x(i,j,1)== 0
بنوسیم،
اما در حالت
کلی باید شرط
را بطور کامل
نوشت.
میشود
الگوریتمهای
سریعتری
برای این کار
نوشت اما اصول
کار همین مطالبی
است که یاد
گرفتیم.
نوشته های پیشین ...
هرگونه استفاده تجاری از مــطالب این سایت بصورت
كتاب٬ نشریه٬ وب و ... ممنوع میباشد
All right
reserved©2005
Amin Bashi