Download presentation

Presentation is loading. Please wait.

Published byJarred Myatt Modified over 2 years ago

1
**Image Display MATLAB functions for displaying image Bit Planes**

Spatial resolution Quantization Dithering

2
**MATLAB Functions Command: image Command: imshow**

display matrix as image default: use current color map to assign color Command: imshow display uint8 matrix as image for double matrix, display in the range of [0,1]

3
**MATLAB: image Function**

Require mapping to display grayscale images No mapping required for true color images Commands to add after image: truesize : display one matrix element as one pixel axis off : turn off axis labelling colormap(gray(num_color)) : adjust color map to grayscale Note: Find the number of gray level by command size(unique(matrix))

4
**Notes on Color Map Mapping to fewer color than required.**

Result: Brighter image or Darker image Mapping to more color than required

5
Notes on Color Map Mapping to fewer color than required produces brighter image. (pixel whose intensity higher than the defined value assigned the highest value (white)) Mapping to more color than required produces darker image. (no pixels mapped to white) For indexed color image, map to the image’s palette.

6
**imshow for Double Matrix**

Range is [0,1] not [0,255]. How to do it? imshow(double_matrix/255) Vary the brightness of the image: imshow(double_matrix/value) value > 255: darker; value < 255: brighter

7
**Conversion: Double to Uint Image**

Manually >> b = double(a); >> c = b/255; Specific command: im2double >> d = im2double(a); Note: im2double automatically scale the output to the range of [0,1]

8
**Conversion: Double to Uint Image**

Manually >> a = uint8(c * 255); Specific command: im2uint8 >> a = im2uint8(c); Note: im2uint8 automatically scale the input (range [0,1]) to the range of [0,255]

9
**Display Binary Image Use uint8 data type with logical flag on**

>> imshow(logical(binary_matrix)) Or >> imshow(double(binary_matrix)) For normal grayscale image >> logical_matrix = integer_matrix > threshold Conversion: logical to uint8 >> matrix = + matrix

10
**Bit Plane 8-bit unsigned integer**

Bit plane: binary image whose pixel is the value at the particular bit in the 8-bit unsigned integer MSB Most Significant Bit Plane LSB Least Significant Bit Plane

11
**Bit Plane: Lena Bit Plane#0 Bit Plane#1 Bit Plane#2 Bit Plane#3**

12
**Bit Plane Construction: Example**

>> c = imread(‘cameraman.tif’); >> cd = double(c); >> c0 = mod(cd,2); >> c1 = mod(floor(cd/2),2); >> c2 = mod(floor(cd/4),2); >> c3 = mod(floor(cd/8),2); >> c4 = mod(floor(cd/16),2); >> c5 = mod(floor(cd/32),2); >> c6 = mod(floor(cd/64),2); >> c7 = mod(floor(cd/128),2); >> >> >> >>

13
**Spatial Resolution Density of the pixels over the image**

Higher spatial resolution = more pixels in the image Change spatial resolution by imresize command Syntax: imresize(matrix, scale, method) imresize(matrix, scale) method: ‘nearest’ , ‘bilinear’, ‘bicubic’

14
**Decrease Spatial Resolution**

E.g. Lower the resolution by half on x and y axis >> imresize(x,1/2);

15
**Increase Spatial Resolution**

E.g. Increase the spatial resolution by two on X and Y axes >> imresize(x,2);

16
**Interpolation Example**

450% Scaled up Nearest Neighbor Bicubic Bilinear

17
Quantization Digitize the image so that the number of the unique value is within the available range 1 2 3 1 2 3

18
**Uniform Quantization x Quantized value 3 2 1 0.25MAX 0.5MAX 0.75MAX**

0.25MAX 0.5MAX 0.75MAX MAX Input value

19
**Uniform Quantization Original values Output value 0 - 63 0 64 -127 1**

MAX = 255 Original values Output value

20
**Quantization: Example**

2 level 3 level

21
**Quantization in MATLAB**

Quantization is simply applying flooring function after division Input image matrix = x Number of output grayscales = n Quantized output: f = floor(double(x)/n);

22
**Quantization in MATLAB: Method 1**

Command Number of grayscales uint8(floor(double(x)/2)*2) uint8(floor(double(x)/4)*4) uint8(floor(double(x)/8)*8) uint8(floor(double(x)/16)*16) uint8(floor(double(x)/32)*32) uint8(floor(double(x)/64)*64) uint8(floor(double(x)/128)*128)

23
**Quantization in MATLAB: Method 2**

Command Number of grayscales imshow(grayslice(x,128),gray(128)) imshow(grayslice(x,64),gray(64)) imshow(grayslice(x,32),gray(32)) imshow(grayslice(x,16),gray(16)) imshow(grayslice(x,8),gray(8)) imshow(grayslice(x,4),gray(4)) imshow(grayslice(x,2),gray(2)) grayslice produces a uint8 version of image x, gray(n) produces a color map of n values.

Similar presentations

© 2017 SlidePlayer.com Inc.

All rights reserved.

Ads by Google