how to project image into (x,y) coordinates graph

17 visualizaciones (últimos 30 días)
SHOBA MOHAN
SHOBA MOHAN el 2 de En. de 2018
Comentada: Walter Roberson el 3 de En. de 2018
I have an image and wish to project the pixel details into graphical form in which x,y coordinates are pixel position and pixel number and vice versa. Can anyone help me
  3 comentarios
Guillaume
Guillaume el 2 de En. de 2018
You use some odd terms in your question which makes it difficult to understand. What do you mean by project? What is pixel number? And what do you mean by vice versa?
It sounds like you simply want to display your image which you'd do with
imshow(yourimagearray)
If you wanted to see the axis, you'd do
axis on
afterward. But I've no idea if that's what you're asking.
SHOBA MOHAN
SHOBA MOHAN el 3 de En. de 2018
Kindly apologize for typo errors. I wish to plot x_width and y_height of image. In x_width plot, x and y axis are pixel position and pixel number whereas in y_height plot, the x and y axis are vice versa. Suggest me to do this

Iniciar sesión para comentar.

Respuestas (2)

Walter Roberson
Walter Roberson el 2 de En. de 2018
YourImage = imread('shadow_remove.
jpg') ;
GreyImage = rgb2gray(YourImage) ; %jpeg are rarely rarely greyscale files even if they look to be
plot(GreyImage(:))
  2 comentarios
SHOBA MOHAN
SHOBA MOHAN el 3 de En. de 2018
Thanks Walter. I attached the expected output format for your reference. Can you please refer the attachment and guide me to get the output in the expected form.
Walter Roberson
Walter Roberson el 3 de En. de 2018
The horizontal and vertical projection are max(GreyImage,[],1) and max(GreyImage,[],2) which you could then plot() or bar() to display.

Iniciar sesión para comentar.


Guillaume
Guillaume el 3 de En. de 2018
If I understood correctly you have a binary image and you want the pixel count (which you call the pixel number) along each column and along each row:
%binaryimage: a binary image
xwidth = 1:size(binaryimage, 2);
xcount = sum(binaryimage, 1);
yheight = 1:size(binaryimage, 1);
ycount = sum(binaryimage, 2);
You can plot that any number of ways, e.g.:
figure;
subplot(1, 2, 1);
bar(xwidth, xcount);
xlabel('pixel position along x');
ylabel('pixel count');
title('horizontal histogram');
subplot(1, 2, 2);
barh(yheight, ycount);
xlabel('pixel count');
ylabel('pixel position along y');
title('vertical histogram');

Etiquetas

Aún no se han introducido etiquetas.

Community Treasure Hunt

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

Start Hunting!

Translated by