Azzera filtri
Azzera filtri

How to convert two rgb images into grayscale? and then subtract ?

2 visualizzazioni (ultimi 30 giorni)
I have two images in jpg format(one as reference image and other is captured image) . I want to convert them to grayscale and want to subtract them. How to do this?
Thanks in Advance.
  3 Commenti
Jan
Jan il 19 Mar 2019
@swati mane: Does this comment concern my answer? Is your problem solved?

Accedi per commentare.

Risposta accettata

Jan
Jan il 18 Mar 2019
img1 = imread('Image1.jpg');
img2 = imread('Image2.jpg');
D = rgb2gray(img1) - rgb2gray(img2)

Più risposte (1)

Image Analyst
Image Analyst il 19 Giu 2021
If you don't want negative numbers clipped to zero you can cast to double before subtracting
image1 = imread('Image1.jpg');
image2 = imread('Image2.jpg');
diffImage = double(rgb2gray(image1)) - double(rgb2gray(image2));
imshow(diffImage, []); % Make sure you use []
If you just want the absolute value of the difference, use imabsdiff():
diffImage = imabsdiff(image1, image2);
No need to cast to double in that case.

Categorie

Scopri di più su Convert Image Type in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by