Go ahead

Go ahead
Logic doesn't explain everything

বুধবার, ২০ সেপ্টেম্বর, ২০১৭

1. Write a program that inputs a color image and convert it into gray scale i) using built-in function rgb2gray() ii) without using rgb2gray()



Solution:
i) Code:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
img = imread('2.jpg'); % READ AN COLOR IMAGE

figure,imshow(img); % SHOW ORIGINAL INPUT INAGE

title('Original');

img1 = rgb2gray(img);% CONVERTING RGB TO GRAY

figure,imshow(img1);

title('Gray using built-in function');  %DISPLAYING GRAYSCALE IMAGE

Output:












ii) Code:
a) Average method: gray_scale  = (R+G+B)/3


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
a1 = uint8(zeros(size(img,1),size(img,2)));

for i=1:size(img,1)

      for j=1:size(img,2)

          a1(i,j)=0.3*img(i,j,1)+0.59*img(i,j,2)+0.11*img(i,j,3);

      end

end


figure,imshow(a1);

title('Gray using weight method');


Output:

b)Weighted method: gray_scale  =0.3*R + 0.59*G + 0.11*B

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
a1 = uint8(zeros(size(img,1),size(img,2)));

for i=1:size(img,1)

      for j=1:size(img,2)

          a1(i,j)=0.3*img(i,j,1)+0.59*img(i,j,2)+0.11*img(i,j,3);

      end

end


figure,imshow(a1);

title('Gray using weight method');

Output:

বৃহস্পতিবার, ১৮ মে, ২০১৭

Operation on Images using MATLAB(I)

ইমেজ রীড করতেঃ imread (‘name of the image. Image type);         e.g, imread(‘black.jpg’);
ইমেজ কোন ভেরিয়েবল এ রাখতেঃ Img1 = imread(‘something.jpg’);
এখানে img1 হল ভেরিয়েবলের নাম।এই ভেরিয়েবলে ওই ইমেজ টার পিক্সেল ভ্যালু স্টোর থাকবে। যেমন-
একটা 8 X 8 ইমেজের জন্য ভেরিয়েবলে নিম্নের মত ভ্যালু স্টোর থাকবেঃ


যে ইমেজ রীড করা হল সেটি দেখতেঃ imshow(img1)

ব্লাঙ্ক ফিগার তৈরি করতেঃ figure()

>>subplot(221);imshow(img1)

এখানে subplot(221) এর অর্থ হল ফিগার উইন্ডো সমান ৪ টা অংশে বিভক্ত করে তার প্রথম ভাগে ইমেজ টাকে প্লট করা ।

>>subplot(224);imshow(img1)
 একইভাবে subplot(224)এর অর্থ হল ফিগার উইন্ডো সমান ৪ টা অংশে বিভক্ত করে তার চতুর্থ ভাগে ইমেজ টাকে প্লট করা ।

একটা ইমেজের বিস্তারিত জানতে >>iminfo(‘1.jpg’)
ans =
           Filename: [1x87 char]
        FileModDate: '18-May-2017 13:01:53'
           FileSize: 6976
             Format: 'jpg'
      FormatVersion: ''
              Width: 420
             Height: 342
           BitDepth: 24
          ColorType: 'truecolor'
    FormatSignature: ''
    NumberOfSamples: 3
       CodingMethod: 'Huffman'
      CodingProcess: 'Sequential'
            Comment: {}
ইমেজের সাইজ জানতেঃ >> size(img1)
কোন ইমেজের নির্দিষ্ট পিক্সেল ভ্যালু জানতেঃ >>img1(100,200)

>>impixelinfo

এই কমান্ডের মাধ্যমে ইমেজের কোন অংশে কার্সর রাখলেই সেই পয়েন্ট এর পিক্সেল ইনফর্মেশন দেখাবে। যেমন উপরের  ফিগার টিতে রাখা কার্সর এর অবস্থানে পিক্সেল ইনটেনসিটি হল 24 আর নিচের  ফিগারের কার্সর টির 179


>>img2 = uint8(zeros(512,512));imshow(img2)
এখানে unit8 হচ্ছে 8 বিট আন্সাইনড ইনটিজার এবং 512 X 512 সাইজের ম্যাট্রিক্স তৈরি করা হয়েছে যার প্রতিটা পজিশানের পিক্সেল ইনটেনসিটি 0 যার ফলে কালো ছবি তৈরি হয়েছে।   




>> img2 = uint8(255*ones(512,512)); imshow(img2)
এখানে unit8 হচ্ছে 8 বিট আন্সাইনড ইনটিজার এবং 512 X 512 সাইজের ম্যাট্রিক্স তৈরি করা হয়েছে যার প্রতিটা পজিশানের পিক্সেল ইনটেনসিটি 255 যার ফলে সাদা ছবি তৈরি হয়েছে।