axes2pix

Преобразуйте координаты осей в пиксельные координаты

Описание

пример

pixelCoord = axes2pix(n,extent,axesCoord) преобразует координату осей во внутренний параметр ("пиксель") координата.

Примечание

imref2d объект имеет несколько методов, которые упрощают преобразование между внутренними координатами, мировыми координатами и индексами массива.

Примеры

свернуть все

Отобразите изображение.

h = imshow('pout.tif');

Figure contains an axes object. The axes object contains an object of type image.

Получите размер изображения.

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

Получите изображение XData и YData.

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

     1   240

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

     1   291

Преобразуйте координату осей во внутреннюю координату для размерностей X и Y.

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

Считайте изображение и отобразите его. Получите размер изображения.

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

Создайте пространственный объект привязки для этого изображения с настройками свойства по умолчанию. По умолчанию верхний левый угол изображения имеет внутреннюю координату (1,1).

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

Figure contains an axes object. The axes object contains an object of type image.

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

     1   240

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

     1   291

В иллюстративных целях задайте произвольную степень изображений в x-и направлениях Y. Этот пример переключает изображение на 20 пикселей и направо на 400 пикселей. Пример также переключает изображение направо на 100 пикселей и сжимает изображение горизонтально на коэффициент 2.

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

Figure contains an axes object. The axes object contains an object of type image.

Выберите пиксель, такой как пиксель около носа дочернего элемента. Этот пиксель происходит вокруг координаты осей (x, y) = (450, 90) в модифицированном изображении.

Преобразуйте координату осей во внутреннюю координату.

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

Внутренняя координата точки в (100, 110). Это соглашается с местоположением носа в оригинальном изображении.

Входные параметры

свернуть все

Количество строк изображений или столбцов в виде положительного целого числа. n количество столбцов типа image для x-координаты или количество строк изображений для y-координаты.

Отобразите мировую степень в виде числового вектора с 2 элементами. extent возвращен get(image_handle,'XData') или get(image_handle,'YData').

Оси координируют, чтобы преобразовать во внутренние координаты в виде числового вектора.

Выходные аргументы

свернуть все

Внутренние координаты, возвращенные как числовой вектор.

Типы данных: double

Советы

  • axes2pix выполняет минимальную проверку на валидности n, axesCoord, или extent аргументы. Например, axes2pix может экстраполировать от extent возвратить отрицательную координату. Функция, вызывая axes2pix несет ответственность за проверку ошибок.

Представлено до R2006a