How to change all the colours in the image to black

7 vues (au cours des 30 derniers jours)
Elysi Cochin
Elysi Cochin le 26 Jan 2021
Modifié(e) : DGM le 9 Mar 2023
how to change all the colours in the image to black except the white colour in image?

Réponse acceptée

Timo Dietz
Timo Dietz le 26 Jan 2021
Modifié(e) : DGM le 9 Mar 2023
Try this:
imageData = imread([yourFile]);
% split R, G, B
imgR = imageData(:, :, 1);
imgG = imageData(:, :, 2);
imgB = imageData(:, :, 3);
% get linear index of all pixels with color not white
colIdx = (imgR < 1 | imgG < 1 | imgB < 1);
% change color to black
imgR(colIdx) = 0;
imgG(colIdx) = 0;
imgB(colIdx) = 0;
% write back to new image data or overwrite the origin imageData
newImage(:, :, 1) = imgR;
newImage(:, :, 2) = imgG;
newImage(:, :, 3) = imgB;

Plus de réponses (1)

yanqi liu
yanqi liu le 1 Fév 2021
clc; clear all; close all;
I = imread('ceshi.png');
I2 = rgb2hsv(I);
s = mat2gray(I2(:,:,2));
bw = im2bw(s, 0.5);
figure; imshow(~bw)

Catégories

En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by