Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

axes2pix

Convertir coordenadas de ejes en coordenadas de píxeles

Descripción

ejemplo

pixelCoord = axes2pix(n,extent,axesCoord) convierte una coordenada de ejes en una coordenada intrínseca ("píxel").

Nota

El objeto tiene varios métodos que facilitan la conversión entre coordenadas intrínsecas, coordenadas mundiales e índices de matriz.imref2d

Ejemplos

contraer todo

Visualizar imagen.

h = imshow('pout.tif');

Obtenga el tamaño de la imagen.

[nrows,ncols] = size(get(h,'CData'));

Obtener la imagen y .XDataYData

xdata = get(h,'XData')
xdata = 1×2

     1   240

ydata = get(h,'YData')
ydata = 1×2

     1   291

Convierta una coordenada de ejes en una coordenada intrínseca para las cotas x e y.

px = axes2pix(ncols,xdata,30)
px = 30 
py = axes2pix(nrows,ydata,30)
py = 30 

Lea una imagen y muésela. Obtenga el tamaño de la imagen.

I = imread('pout.tif'); [nrows,ncols] = size(I)
nrows = 291 
ncols = 240 

Cree un objeto de referencia espacial para esta imagen, con la configuración de propiedades predeterminada. De forma predeterminada, la esquina superior izquierda de la imagen tiene una coordenada intrínseca (1,1).

RI = imref2d(size(I)); h = imshow(I,RI);

xData = get(h,'XData')
xData = 1×2

     1   240

yData = get(h,'YData')
yData = 1×2

     1   291

Para fines ilustrativos, especifique una extensión de imagen arbitraria en las direcciones - y -.xy Este ejemplo desplaza la imagen hacia arriba en 20 píxeles y hacia la derecha por 400 píxeles. El ejemplo también desplaza la imagen a la derecha por 100 píxeles y comprime la imagen horizontalmente por un factor de 2.

xWorldLimits = 0.5*xData + 400; yWorldLimits = yData - 20; RA = imref2d(size(I),xWorldLimits,yWorldLimits);  imshow(I,RA)

Seleccione un píxel, como un píxel cerca de la nariz del niño. Este píxel se produce alrededor de la coordenada de los ejes (x, y) á (450, 90) en la imagen modificada.

Convierta la coordenada de los ejes en una coordenada intrínseca.

px = axes2pix(ncols,xWorldLimits,450)
px = 100 
py = axes2pix(nrows,yWorldLimits,90)
py = 110 

La coordenada intrínseca del punto se encuentra en (100, 110). Esto coincide con la ubicación de la nariz en la imagen original.

Argumentos de entrada

contraer todo

Número de filas o columnas de imagen, especificado como un entero positivo. es el número de columnas de imagen para la coordenada - o el número de filas de imagen para la coordenada -.nxy

Extensión del mundo de la imagen, especificada como un vector numérico de 2 elementos. es devuelto por o .extentget(image_handle,'XData')get(image_handle,'YData')

Los ejes se coordinan para convertir los ejes en coordenadas intrínsecas, especificadas como un vector numérico.

Argumentos de salida

contraer todo

Coordenadas intrínsecas, devueltas como vector numérico.

Tipos de datos: double

Sugerencias

  • realiza una comprobación mínima de la validez de los argumentos , , o .axes2pixnaxesCoordextent Por ejemplo, puede extrapolar desde para devolver una coordenada negativa.axes2pixextent La llamada de función es responsable de la comprobación de errores.axes2pix

Introducido antes de R2006a