امتیاز موضوع:
  • 1 رأی - میانگین امتیازات: 5
  • 1
  • 2
  • 3
  • 4
  • 5
تولید تصویر سینوسی در متلب - پردازش تصویر
نویسنده پیام
طار آفلاین
كاربر تک ستاره
*

ارسال‌ها: 41
موضوع‌ها: 8
تاریخ عضویت: مهر ۱۳۹۱

تشکرها : 21
( 139 تشکر در 31 ارسال )
ارسال: #1
تولید تصویر سینوسی در متلب - پردازش تصویر
خوب یادش بخیر این اولین تمرین درس پردازش تصویرمون بود، ما بایستی یک تصویر سینوسی تولید میکردیم سپس با عکس خودمون به شکلهای مختلف جمع میکردیم،گفتیم هیییییی شاید یکی هم باشه این تمرین رو بخواد:

*گفته باشم که کدها برای MATLAB نوشته شدن

1 ابتدا مسیر عکس خودتون رو به جای NIT.jpg وارد کنید.
2 برنامه رو اجرا کنید و نتایج جالبشو ببینید.
3 نمونه خروجی با استفاده از عکس خودم رو تو ضمیمه گذاشتم.
4 جلو کدها کامنت نویسی کردم تا راحتتر خونده بشن.

موفق باشید
aban_palan_dalan_delon@yahoo.com





کد:
close all
clear all
clc

pic=imread('C:\Users\sharjy\Desktop\NIT\DIP\final proj 1\NIT.jpg');      %read my photo
picgray1=(0.3*pic(:,:,1))+(0.59*pic(:,:,2))+(0.11*pic(:,:,3));             %make my photo gray
[I,J]=meshgrid(0:511,0:511);                                               %generate a vector
picgray18=im2uint8(picgray1);                                              %bring to uint8 class

%----------------------------------------------------------

picsin=(1+sin((1/(4*pi))*(I+J)));                                          %make background with y=1+Asin(ax+by) with a=b=1/4pi
picsin2=im2uint8(picsin);                                                  %bring to uint8 class
picsin2(128:383,166:345)=picgray18(1:end,1:end);                           %copy my pic to background

picsin3=.1*(1+sin((1/(4*pi))*(I+J)));                                      %A=.1  a=b=1/4pi ,you can see contrast change in background
picsin3=im2uint8(picsin3);
picsin3(128:383,166:345)=picgray18(1:end,1:end);

picsin4=(1+sin((1/(pi))*(I+J)));                                           %A=1  a=b=1/pi ,change background line width
picsin4=im2uint8(picsin4);
picsin4(128:383,166:345)=picgray18(1:end,1:end);

picsin5=.1*(1+sin((1/(3*pi))*(I)+(1/(5*pi))*(J)));                         %A=.1  a=/=b ,a=1/3pi , b=1/5pi ,--->WOooOw <---, we can change line slope
picsin5=im2uint8(picsin5);
picsin5(128:383,166:345)=picgray18(1:end,1:end);

%-------------------------------------------------------------
%picbign=imresize(picgray18,[512 512],'nearest');
We did not get good results in using nearest Interpolation metod                    
%imshow(picbign);
%figure;
picbigb=imresize(picgray18,[512 512],'bicubic');                           %bicubic interpolation
picsin=(1+sin(((1/(pi))*(I))+((1/(.8*pi))*(J))));                          %y=1+Asin(ax+by)
picsinp=im2double(picsin);                                                 %change background class to double
picgray1d=im2double(picbigb);                                              %change my picture class to double
picsinp(1:end,1:end)=(picgray1d(1:end,1:end))+(picsinp(1:end,1:end));      %sum my picture with background
%------------------------------------------------------------
                                                                           % making a banner for result
subplot(3,3,1),subimage(pic),axis off,title('orginal pic');
subplot(3,3,2),subimage(picgray1),axis off,title('gray pic');
subplot(3,3,3),subimage(picsin),axis off,title('sin');
subplot(3,3,4),subimage(picsin2),axis off,title('pic in sin');
subplot(3,3,5),subimage(picsin3),axis off,title('change A in Asin(?X+?Y)');
subplot(3,3,6),subimage(picsin4),axis off,title('a=b=1/pi in Asin(?X+?Y)');
subplot(3,3,7),subimage(picsin5),axis off,title('a=1/3*pi , b=1/5*pi in Asin(?X+?Y)');
subplot(3,3,8),subimage(picbigb),axis off,title('fit gray pic to background');
subplot(3,3,9),subimage(picsinp),axis off,title('summation');

البته این هم ورژن کوتاه تر همین برنامه است:

کد:
pic=imread('C:\Users\sharjy\Desktop\NIT\DIP\final proj 1\NIT.jpg');      
picgray1=(0.3*pic(:,:,1))+(0.59*pic(:,:,2))+(0.11*pic(:,:,3));            
[I,J]=meshgrid(0:511,0:511);                                              
picgray18=im2uint8(picgray1);                                              
picsin=(1+sin(((1/(pi))*(I))+((1/(.8*pi))*(J))));                          
picsin=im2uint8(picsin);                                                  
picsin(128:383,166:345)=picgray18(1:end,1:end);                            
imshow(picsin);
figure
picsin=(1+sin(((1/(pi))*(I))+((1/(.8*pi))*(J))));
picsinp=im2double(picsin);                                                
picbig=imresize(picgray18,[512 512],'bicubic');                            
picbigd=im2double(picbig);                                                
picsinp(1:end,1:end)=(picbigd(1:end,1:end))+(picsinp(1:end,1:end));        
imshow(picsinp);


فایل‌(های) پیوست شده بندانگشتی (ها)
   

بعد از دو سال از زمان بارگذاری این پروژه در این سایت و بیش از 5000 بار دانلود شدن آن و نیز چندین ارائه موفق توسط دانشجویان در دانشگاهای مختلف و بیش 1200 بار پاسخگویی به مشکلات و آموزش اجرای پروژه به دوستان از طریق ایمیل. از هم اکنون فایلهای جدید جایگزین فایلهای قدیمی شده است.

دوستان علاقه مند میتوانند برای دریافت فایل word پروژه پلاک خودرو و همچنین کد های اصلی و آشنایی با نحوه اجرا و کارکرد آن از به آدرس زیر ایمیل بزنید.

aban_palan_dalan_delon@yahoo.com

(آخرین ویرایش در این ارسال: ۱۷-مهر-۱۳۹۱, ۱۳:۴۶:۳۰، توسط طار.)
۱۷-مهر-۱۳۹۱, ۱۳:۳۹:۴۷
ارسال‌ها
پاسخ
تشکر شده توسط : salehjg, رسول, omid_phoenix


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  [پروژه] تولید موج pwm با 555 a.mehran 0 3,871 ۱۵-شهریور-۱۳۹۳, ۱۹:۱۴:۳۰
آخرین ارسال: a.mehran
myBB [مقاله] رد یابی ماه در آسمان شب با پردازش تصویر (پروژه کامل) طار 1 3,141 ۱۵-مرداد-۱۳۹۳, ۰۸:۴۹:۰۰
آخرین ارسال: a.mehran
  درخواست آموزش تابلو روان بصورت تولید انبوه javadnagizadeh 11 9,351 ۲۱-مرداد-۱۳۹۱, ۱۲:۴۹:۲۰
آخرین ارسال: blogeabb
  تولید باطری سدیم_یون به جای لیتیوم_یون rockeagle 1 3,016 ۱۸-اردیبهشت-۱۳۹۱, ۱۵:۰۹:۳۳
آخرین ارسال: abbasalifix
  کمک انتقال تصویر dvrروی اینترنت ghx 6 5,657 ۰۱-اردیبهشت-۱۳۹۱, ۱۵:۱۹:۰۲
آخرین ارسال: ghx
  لامپ تصویر apcog 4 5,812 ۱۴-شهریور-۱۳۹۰, ۲۳:۰۵:۰۵
آخرین ارسال: EBKA
  تولید برق از توپ فوتبال رسول 1 2,709 ۰۶-مرداد-۱۳۹۰, ۰۹:۴۷:۰۲
آخرین ارسال: rdscience
  طراحی نوسان ساز یک مگاهرتز سینوسی ilgar 8 14,879 ۱۴-مهر-۱۳۸۹, ۱۸:۲۴:۲۰
آخرین ارسال: reza555
  گرفتن تصویر از فاصله 4 میلیمتری EBKA 4 4,182 ۰۳-مهر-۱۳۸۹, ۱۶:۴۱:۳۴
آخرین ارسال: t3r!p3000
  ایجاد تصویر بر روی تلویزیون sadegh-emrah 1 2,862 ۱۱-مرداد-۱۳۸۹, ۱۶:۵۱:۲۰
آخرین ارسال: رسول

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS