Colour quantization, uniform quantization
Afficher commentaires plus anciens
Hi there, I'm working on a project on colour quantization and I'm a little lost with matlab (complete beginner). The method of quantization I'm working on is uniform quantization which splits the red and green axis into 8 segments and the blue axis into 4 giving 256 regions. Then finds the average colour in each region. I'm wondering how I would go about this my code so far for this:
image = imread(ImageName);
red = loadedImg(:,:,1);
green = loadedImg(:,:,2);
blue = loadedImg(:,:,3);
I honestly have no idea as I'm new to matlab! Thanks in advance!
Réponses (3)
Image Analyst
le 10 Déc 2015
0 votes
Don't call your image "image". Call it loadedImage or something because image() is the name of a built-in function. So then just do a for loop to get the 3D gamut. Attached is an example.
1 commentaire
Debs Bradley
le 10 Déc 2015
Yashwanth
le 2 Sep 2026 à 17:20
0 votes
% Uniform Quantization of Piecewise Signal
t1 = -1:0.01:0;
t2 = 0.01:0.01:1;
x1 = t1 + 1;
x2 = t2 - 1;
t = [t1 t2];
x = [x1 x2];
figure;
plot(t,x);
title("Original Signal");
xlabel("time");
ylabel("amplitude");
grid on;
x_max = max(x);
x_min = min(x);
N = 8;
delta = (x_max - x_min)/N;
R = x_min:delta:x_max;
x_h = zeros(1,length(x));
for i = 1:length(x)
for j = 1:(length(R)-1)
if x(i) >= R(j) && x(i) <= R(j+1)
x_h(i) = R(j) + (delta/2);
end
end
end
figure;
stem(t,x_h);
title("Quantization Level");
xlabel("time");
ylabel("level");
grid on;
figure;
stem(x,x_h);
title("Transfer Characteristics");
xlabel("Input Signal");
ylabel("Quantized Signal");
grid on;
Yashwanth
le 2 Sep 2026 à 17:22
0 votes
x = random('norm',2,sqrt(5),1,10000);
subplot(3,1,1)
stem(x)
title("Gaussian signal")
xlabel("time")
ylabel("amplitude")
N = 8;
[R,C] = lloyds(x,N);
[index,q] = quantiz(x,R,C);
subplot(3,1,2)
stem(q)
title("Quantization Level")
xlabel("Number of Random Variables")
ylabel("q")
subplot(3,1,3)
stem(x,q)
title("Transfer Characteristics")
xlabel("x")
ylabel("q")
Catégories
En savoir plus sur Quantizers dans Centre d'aide et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!