You are on page 1of 12

‫بسمه تعالي‬

‫گزارش كار درس پردازش تصاوير رقومي پيشرفته‬

‫پروژه شماره ‪١‬‬

‫وارد كردن فايل تصوير ‪ RAW BAYER‬و درونيابي تصوير و تبديل تصوير ‪ RGB‬به تصويرانديسي در‬
‫نرم افزار متلب‬

‫استاد مربوطه ‪ :‬جناب آقاي دكتر سعادت سرشت‬

‫نام و نام خانوادگي ‪ :‬منصور مهران فر‬

‫نيمسال اول‪٩٨-٩٩‬‬

‫فهرست‬
‫‪١‬‬
‫ﺻﻔﺤه‬ ‫عنوان‬

‫مﻘﺪمه ‪٣ ............................................................................................................................‬‬

‫تصوير با فيلتر ‪٣ ................................................................................................ Bayer‬‬

‫درونيابي تصوير ‪٣............................................................................................................‬‬

‫بيان مسئله ‪٤ ......................................................................................................................‬‬

‫راهكار و حل مسئله‪٤ .......................................................................................................‬‬

‫الگوريتم برنامه ‪٧...............................................................................................................‬‬

‫خروجي هاي برنامه ‪٩ .....................................................................................................‬‬

‫نتيجه گيري ‪١٢ ...................................................................................................................‬‬

‫‪٢‬‬
‫مﻘﺪمه‬

‫يك تصوير ميتواند با يك تابع ‪ ٢‬بعدي بصورت )‪ f(x,y‬تعريف شود كه ‪ x ,y‬مختصات نقاط در تصوير ميباشند ‪.‬‬
‫مقداز تابع ‪ f‬در مختصات ‪ x,y‬عبارت است از ‪ intensity‬يا سطح ‪ Gray‬آن نقطه در تصوير زماني كه ‪ x , y‬و‬
‫مقدار تابع ‪ f‬همگي داراي مقادير محدود و گسسته باشند ما از تصوير تحت عنوان يك تصوير ديجيتال ياد ميكنيم ‪.‬‬
‫در واقع پردازش تصوير ديجيتال به فرآيند پردازش تصاوير ديجيتال توسط كاميپوتر هاي ديجيتال اطﻼق ميشود‪.‬‬

‫تصوير با فيلتر ‪Bayer‬‬

‫الگوي موزائيكي فيلترهاي باير‪ ،‬ساختاري براي چيدمان رنگهاي اصلي قرمز‪ ،‬سبز و آبي ‪ RGB‬بر روي شبكهي‬
‫مربعي فتوسنسورها است‪ .‬چيدمان خاص اين الگو در بيشتر سنسورهاي تصوير دوربينهاي ديجيتال‪ ،‬دوربينهاي‬
‫فيلمبرداري و اسكنرها براي تشكيل تصوير رنگي استفاده ميشود‪ .‬الگوي اين فيلتر شامل ‪ ٪٥٠‬سبز‪ ٪٢٥ ،‬قرمز و‬
‫‪ ٢٥٪‬آبي است‪ ،‬بنابر اين به صورت ‪ RGBG‬يا ‪ GRGB‬يا ‪ RGGB‬به آن اشاره ميشود‪ .‬اين الگوي را به ياد ابداع‬
‫كنندهي آن ‪ Bryce E. Bayer‬از شركت‪ ، Eastman Kodak‬الگوي فيلترهاي رنگي باير ناميدند‪.‬‬

‫درونيابي تصوير‬

‫يكي از حوزه هاي پر كاربرد در پردازش تصوير ‪ ،‬درونيابي يا بزرگ نمايي كردن ابعاد تصوير است ‪.‬‬
‫فرض ميكنيم تصويري داريم كه ميخواهيم ابعاد آن را بزرگ نماييم ‪ ،‬زمانيكه تصوير بزرگتر را از تصوير‬
‫كوچكتر ميخواهيم بسازيم ‪ ،‬يكسري پيكسل بين پيكسل هاي تصوير اصلي اضافه ميشود ‪ ،‬بدست‬
‫آوردن مقدار اين پيكسل هاي اضافه شده روش هاي گوناگوني داردكه عبارت اند از ‪bilinear- :‬‬
‫‪ nearest neaighbour-bicubic‬كه در ادامه هر كدام ازاين روش ها را بر روي تصوير اصلي اعمال‬
‫خواهيم كرد ‪.‬‬
‫‪٣‬‬
‫بيان مسئله‬

‫صورت مسئله ما در اين پروژه عبارت است از ‪:‬‬

‫يك تصوير‪ RGB‬ﺑافرمت ‪ RAW Bayer‬انتخاب كرده و سپس اين تصوير را تبديل ﺑه تصوير ‪true‬‬
‫‪ color‬كرده و ﺑعد سه ﺑاند آن را جدا كرده و ﺑه روش هاي مختلف كه در ﺑاﻻذكر شده عمليات‬
‫درونياﺑي را ﺑراي هر ﺑاند انجام داده و سپس ﺑاندها را مجددا تركيب نموده و پس از آن تصوير را ﺑه‬
‫فرمت ‪ ٢٤ TIFF‬ﺑيتي تبديل كرده و سپس تصوير ‪TIFF‬را ﺑه تصوير ‪ ٨ index color‬ﺑيتي تبديل كرده‬
‫و سرانجام هيستوگرام تصويرخروجي را ﺑا تصوير ورودي مقايسه ميكنيم ‪.‬‬

‫راهكار و حل مسئله‬

‫اﺑتدا تصوير ‪ RAW Bayer‬را انتخاب ميكنيم ‪.‬‬


‫تصوير اصلي ما ﺑه شكل زير است ‪:‬‬

‫‪۴‬‬
‫اينك ﺑايد تصوير ورودي را ﺑه تصوير ‪ True Color‬تبديل نماييم ﺑراي اين منظور از دستور زير در‬
‫محيط نرم افزار متلب استفاده ميكنيم كه ‪ J‬تصوير ‪ True color‬خروجي ميباشد ‪.‬‬
‫;)'‪J = demosaic(I,'bggr‬‬

‫*ﺑراي ﺑخش درونياﺑي از تاﺑع )(‪ interp2‬استفاده ميكنيم كه دراين پروژه روش هاي درونياﺑي‬
‫‪ Bilinear- nearest neaighbour-bicubic‬را مورد پردازش قرار ميدهيم ‪.‬‬

‫‪۵‬‬
‫* ﺑراي تبديل تصوير ‪ RGB‬ﺑه ايندكس از تاﺑع )(‪ rgb2ind‬استفاده ميكنيم‪.‬‬

‫ﺑراي ساخت صحيح اين نوع از تصوير حتمي ﺑه ماتريس ‪ map‬مي ﺑاشد‪.‬‬
‫ماتريس ‪ map‬اعدادي ﺑين ‪ ٠‬تا ‪ ١‬را ﺑا ‪ ٤‬رقم اعشار توليد مي كند‪.‬‬
‫اين ماتريس در حقيقت ماتريس ‪ ٣‬ﻻيه از رنگ هاي اصلي قرمز‪ ,‬سبز و آﺑي مي ﺑاشد و نمونه اي از‬
‫رنگ هاي درون تصوير را در خود ذخيره كرده است و ﺑه عنوان جعبه رنگ استفاده مي كند‪.‬‬
‫در صورتي كه از اين ماتريس استفاده نشود تصوير ﺑه صورت غير رنگي در خواهد آمد‪.‬‬
‫ماتريس ‪ X‬هم در حقيقت عددي ‪ ١٦‬ﺑيتي كه نمايانگر يك عدد از ماتريس ‪ map‬مي ﺑاشد‪.‬‬
‫مقدار عدد ‪ n‬تعيين كننده دقت و تعداد نمونه ﺑرداري از رنگ تصوير مي ﺑاشد و هر چه ﺑاﻻتر ﺑاشد‬
‫تا عدد ‪ ٦٥٥٣٦‬تصوير از كيفيت رنگ ﺑاﻻتري ﺑرخوردار است‪.‬‬

‫‪۶‬‬
‫الگوريتم برنامه‬

clc
clear
I = imread('RAWcomposite.tif');
J = demosaic(I,'bggr');
picture=im2double(J);
[m n]=size(J);
%redband
R=picture(:,:,1);
%greenband
G=picture(:,:,2);
%blueband
B=picture(:,:,3);

%interpolate
[rowspicture, columnpicture, numberOfColorChannelsX] = size(picture);
x = linspace(1, columnpicture, m);
y = linspace(1, rowspicture,n);
[Xq,Yq]= meshgrid(x, y);

redChannel1 = interp2(R,Xq,Yq,'linear');
greenchannel1= interp2(G,Xq,Yq,'linear');
bluechannel1= interp2(B,Xq,Yq,'linear');
redChannel2 = interp2(R,Xq,Yq,'cubic');
greenchannel2= interp2(G,Xq,Yq,'cubic');
bluechannel2= interp2(B,Xq,Yq,'cubic');
redChannel3 = interp2(R,Xq,Yq,'nearest');
greenchannel3= interp2(G,Xq,Yq,'nearest');
bluechannel3= interp2(B,Xq,Yq,'nearest');

%MERGE BANDS
MyRGB1=cat(3,redChannel1,greenchannel1,bluechannel1);
MyRGB2=cat(3,redChannel2,greenchannel2,bluechannel2);
MyRGB3=cat(3,redChannel3,greenchannel3,bluechannel3);

graymergebandsimage1=rgb2gray(MyRGB1);
graymergebandsimage2=rgb2gray(MyRGB2);
graymergebandsimage3=rgb2gray(MyRGB3);

graypicture=rgb2gray(picture);
imwrite(redChannel,'redChannel.tiff')
imwrite(greenchannel,'greenchannel.tiff')
imwrite(bluechannel,'bluechannel.tiff')
imwrite(picture,'picture.tiff')
imwrite(MyRGB1,'MyRGB1.tiff')
imwrite(MyRGB2,'MyRGB2.tiff')
imwrite(MyRGB3,'MyRGB3.tiff')

%indexcolor
[X, map] = rgb2ind(picture,100);

ORGINALPICTURE=rgb2gray(picture);

%histogram
subplot(2,1,1)
figure(1)
imhist(ORGINALPICTURE)

٧
subplot(2,1,2)
figure(2)
imhist(MyRGB1)

٨
‫خروجي هاي برنامه‬

‫تصوير انترپوله شﺪه به روش ‪Bilinear‬‬

‫‪٩‬‬
‫تصوير انترپوله شﺪه به روش ‪cubic‬‬

‫‪١٠‬‬
‫تصوير انترپوله شﺪه به روش ‪nearest‬‬

‫‪١١‬‬
‫نتيجه گيري‬

‫براي نتيجه گيري از مﻘايسه هيستوگرام هاي تصاوير اﺻلي و تصوير انترپوله شﺪه ‪linear‬‬
‫استﻔاده ميكنيم ‪:‬‬

‫هيستوگرام تصوير اوليه‬

‫هيستوگرام تصوير انترپوله شده ﺑه روش ‪bilinear‬‬


‫همانطور كه مشاهده ميشود تصوير انترپوله شده ﺑازه ﺑيشتري از طيف درجات خاكستري در محدوده‬
‫‪ ٠-٢٥٥‬تشكيل ميدهد كه اين امر ﺑر افزايش كيفيت ﺑصري تصوير ورودي افزوده است ‪.‬‬
‫همچنين تصويري كه ﺑا استفاده از روش ‪ bilinear‬انترپوله شده است ﺑه نسبت تصاوير انترپوله شده‬
‫ﺑا دو روش ديگر داراي كيفيت ﺑصري ﺑهتري از جهت نمايش است‪.‬‬

‫‪١٢‬‬

You might also like