contains

Определите, содержит ли изображение точки в мировой системе координат

Описание

пример

TF = contains(R,xWorld,yWorld) возвращает логический массив TF. Каждый элемент TF(k) имеет значение true тогда и только тогда, когда соответствующая точка (xWorld(k), yWorld(k)) попадает в границы изображения, сопоставленного с 2-D пространственным объектом привязки R.

пример

TF = contains(R,xWorld,yWorld,zWorld) указывает, попадает ли каждая точка в границы изображения, сопоставленного с 3-D пространственным объектом привязки R.

Примеры

свернуть все

Чтение 2-D изображения в рабочую область.

I = imread('cameraman.tif');

Создайте imref2d пространственный объект привязки, сопоставленный с изображением.

R = imref2d(size(I))
R = 
  imref2d with properties:

           XWorldLimits: [0.5000 256.5000]
           YWorldLimits: [0.5000 256.5000]
              ImageSize: [256 256]
    PixelExtentInWorldX: 1
    PixelExtentInWorldY: 1
    ImageExtentInWorldX: 256
    ImageExtentInWorldY: 256
       XIntrinsicLimits: [0.5000 256.5000]
       YIntrinsicLimits: [0.5000 256.5000]

Проверьте, есть ли на изображении определенные мировые координаты.

res = contains(R,[5 8 8],[5 10 257])
res = 1x3 logical array

   1   1   0

Этот результат указывает, что точки (5,5) и (8,10) находятся в границах изображения и что точка (8, 257) находится вне границ изображения. Этот вывод соответствует XWorldLimits и YWorldLimits свойства пространственного объекта привязки R.

Чтение 3-D изображения в рабочую область. Это изображение состоит из 27 систем координат 128 на 128 пиксельных изображений.

load mri;
D = squeeze(D);

Создайте imref3d пространственный объект привязки, сопоставленный с изображением.

R = imref3d(size(D))
R = 
  imref3d with properties:

           XWorldLimits: [0.5000 128.5000]
           YWorldLimits: [0.5000 128.5000]
           ZWorldLimits: [0.5000 27.5000]
              ImageSize: [128 128 27]
    PixelExtentInWorldX: 1
    PixelExtentInWorldY: 1
    PixelExtentInWorldZ: 1
    ImageExtentInWorldX: 128
    ImageExtentInWorldY: 128
    ImageExtentInWorldZ: 27
       XIntrinsicLimits: [0.5000 128.5000]
       YIntrinsicLimits: [0.5000 128.5000]
       ZIntrinsicLimits: [0.5000 27.5000]

Проверьте, есть ли на изображении определенные 3-D мировых координат.

res = contains(R,[5 6 6 8],[5 10 10 257],[1 27.5 28 1])
res = 1x4 logical array

   1   1   0   0

Этот результат указывает, что точки (5,5,1) и (6,10,27,5) находятся в пределах границ изображения. Точки (6,10,28) и (8 257 1) находятся вне границ изображения. Этот вывод соответствует XWorldLimits, YWorldLimits, и ZWorldLimits свойства пространственного объекта привязки R.

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

свернуть все

Пространственный объект привязки, заданный как imref2d или imref3d объект. R сопоставлен с изображением.

Координаты вдоль x -размерность в мировой системе координат, заданные в виде числа или вектора.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Координаты вдоль y -размерность в мировой системе координат, заданные в виде числа или вектора. yWorld - такая же длина, как и xWorld.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Координаты вдоль z -размерность в мировой системе координат, заданные в виде числа или вектора. zWorld - такая же длина, как и xWorld и yWorld.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

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

свернуть все

Флаг, указывающий, существуют ли координаты в границах изображения, возвращаемый как логический скаляр или вектор. TF - та же длина, что и входные векторы координат xWorld, yWorld, и (при необходимости) zWorld.

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

См. также

|

Введенный в R2013a