Choosing Image Processing Thesis? Image processing is a form of signal processing.  Image Processing Thesis involves processing or altering an existing in a desired manner. Image processing is a form of signal processing. The input is an image which is to be processed by the set of characteristics or parameters related to the image. Generally, image processing concepts are developed by using MATLAB simulation tool.

 

Needs of Image Processing:

  • Enhancement and restoration.
  • Information analysis and automated recognition.
  • Transmission and Storage.
  • Security and Rights Protection.

Image Processing Operations:

  • Image Differencing and Morphing
  • Digital Composition
  • Image Recognition

Types of Image Processing:

  • Image-to-Information Transformation.
  • Information-to-Image Transformation.
  • Image-to-Image Transformation.

Applications of Image Processing:

  • Facial Expression Recognition.
  • Hand Gesture Recognition.
  • Inserting Artificial Objects into a scene.

IMAGE PROCESSING THESIS TOPICS:

1.Security Applications

2.Cryptography

3.Steganography

4.Watermarking

5.Object Detection

6.Image Compression

7.Image Forensics

8.Pattern Recognition

9.Disease Identification

10.Speech Recognition

11.Signal Processing

12.Remote Sensing

EXAMPLE CODE FOR IMAGE PROCESSING THESIS  ON FORENSIC TOOL (JPEGGHOST):

clear;
b = 16; % block size
q1 = 90; % JPEG quality for first image
q2 = 60; % JPEG quality for second image (q2 < q1)
qrng = [15 : 5 : 90]; % range of qualities to test against
sz = 200; % size of altered region (in pixels)
%%% LOAD ORIGINAL
im1 = imread( ‘redcar_90_tamp95.jpg’ );[ydim,xdim,zdim] = size(im1);
%%% SAVE WITH DIFFERENT JPEG QUALITIES
imwrite( im1, ‘tmp1.jpg’, ‘quality’, q1 );
imwrite( im1, ‘tmp2.jpg’, ‘quality’, q2 );
%%% MAKE NEW IMAGE AS COMBINATION OF im1 AND im2
im1 = imread( ‘tmp1.jpg’ );
im2 = imread( ‘tmp2.jpg’ );
xrng = round([xdim/2-sz/2 : xdim/2+sz/2-1] ); % altered region
yrng = round( [ydim/2-sz/2 : ydim/2+sz/2-1] ); % altered region
im1(yrng,xrng,:) = im2(yrng,xrng,:); % splice
imwrite( im1, ‘tmp3.jpg’, ‘quality’, q1 ); % re-save
%%% LOAD ALTERED IMAGE
im3 = imread( ‘tmp3.jpg’ );[ydim,xdim,zdim] = size(im3);
%%% COMPUTE DIFFERENCE BETWEEN im3 AND JPEG COMPRESSED VERSIONS OF im3
nQ = length(qrng);
map = zeros( ydim, xdim, length(qrng) );
c = 1;
for q = qrng
imwrite( uint8(im3), ‘tmp4.jpg’, ‘quality’, q ) ;
im4 = double( imread( ‘tmp4.jpg’ ) );
for z = 1 : zdim % compute difference: average over RGB
map(:,:,c) = map(:,:,c) + (double(im3(:,:,z)) – im4(:,:,z)).^2;
end
map(:,:,c) = map(:,:,c) / zdim;
c = c + 1;
end
%%% COMPUTE DIFFERENCE (PER bxb BLOCK)
blkE = zeros( floor((ydim-b)/b), floor((xdim-b)/b), nQ );
for c = 1 : nQ
cy = 1;
for y = 1 : b : ydim-b
cx = 1;
for x = 1 : b : xdim-b
bE = map(y:y+b-1,x:x+b-1,c);
blkE(cy,cx,c) = mean(bE(:));
cx = cx + 1;
end
cy = cy + 1;
end
end
%%% NORMALIZE DIFFERENCE INTO [0,1] minval = min( blkE, [], 3 );
maxval = max( blkE, [], 3 );
for c = 1 : nQ
blkE(:,:,c) = blkE(:,:,c) – minval;
blkE(:,:,c) = blkE(:,:,c) ./ (maxval-minval);
end
%%% DISPLAY RESULTS
sp = ceil( sqrt(nQ) );
for c = 1 : nQ
subplot(sp,sp,c);
imagesc( blkE(:,:,c), [0 1] );
axis image off;
title( sprintf( ‘%d’, qrng(c) ) );
drawnow;
end

EXAMPLE CODE FOR  IMAGE PROCESSING THESIS ON CRYPTOGRAPHY ALGORITHM:

error(nargchk(1,3,nargin));
switch nargin
case 1
mode = ‘ENC’;
K = round(rand(8,7));
K(:,8) = mod(sum(K,2),2); % note these eight bits of key are never used in encryption
K = reshape(K’,1,64);
varargout{2} = K;
case 2
switch mode
case ‘ENC’
K = round(rand(8,7));
K(:,8) = mod(sum(K,2),2); % note these eight bits of key are never used in encryption
K = reshape(K’,1,64);
varargout{2} = K;
case ‘DEC’
error(‘Key has to be provided in decryption mode (DEC)’)
otherwise
error(‘WRONG working mode!!! Select either encrtyption mode: ENC or decryption mode: DEC !!!’)
end
case 3
if isempty(setdiff(unique(key),[0,1])) % check provided key type
if numel(key) == 64 % check provided key parity
keyParityCheck = @(k) (sum(mod(sum(reshape(k,8,8)),2))==0);
if keyParityCheck(key) == 1
K = key(:)’;
else
error(‘Key parity check FAILED!!!’)
end
elseif numel(key) == 56 % add parity bits
K = reshape(key,7,8)’;
K(:,8) = mod(sum(K,2),2); % note these eight bits of key are never used in encryption
K = reshape(K’,1,64);
varargout{2} = K;
display(‘Key parity bits added’)
else
error(‘Key has to be either 56 or 64-bit long!!!’)
end
else
error(‘Key has to be binary!!!’)
end
end