Main Content

worldToIntrinsic

Convertir del mundo a las coordenadas intrínsecas

Descripción

ejemplo

[xIntrinsic, yIntrinsic] = worldToIntrinsic(R,xWorld,yWorld) asigna puntos del sistema mundial 2D ( , ) al sistema intrínseco 2D ( , ) en función de la relación definida por el objeto de referencia espacial 2D .xWorldyWorldxIntrinsicyIntrinsicR

Si las coordenadas de entrada th ( ( ), ( )) quedan fuera de los límites de la imagen en el sistema de coordenadas universales, extrapola ( ) y ( ) fuera de los límites de la imagen en el sistema de coordenadas intrínsecas.kxWorldkyWorldkworldToIntrinsicxIntrinsickyIntrinsick

ejemplo

[xIntrinsic,yIntrinsic,zIntrinsic] = worldToIntrinsic(R,xWorld,yWorld,zWorld) asigna puntos del sistema de coordenadas universales al sistema de coordenadas intrínsecas utilizando el objeto de referencia espacial 3D.R

Ejemplos

contraer todo

Lea una imagen en escala de grises 2D de una rodilla en el espacio de trabajo.

m = dicominfo('knee1.dcm'); A = dicomread(m);

Cree un objeto, especificando el tamaño y la resolución de los píxeles.imref2d El archivo DICOM contiene un campo de metadatos que especifica la resolución de la imagen en cada dimensión en milímetros por píxel.PixelSpacing

RA = imref2d(size(A),m.PixelSpacing(2),m.PixelSpacing(1))
RA =    imref2d with properties:             XWorldLimits: [0.1562 160.1562]            YWorldLimits: [0.1562 160.1562]               ImageSize: [512 512]     PixelExtentInWorldX: 0.3125     PixelExtentInWorldY: 0.3125     ImageExtentInWorldX: 160     ImageExtentInWorldY: 160        XIntrinsicLimits: [0.5000 512.5000]        YIntrinsicLimits: [0.5000 512.5000]  

Muestre la imagen, incluido el objeto de referencia espacial. Las coordenadas de los ejes reflejan las coordenadas mundiales. Observe que la coordenada (0,0) está en la esquina superior izquierda.

figure imshow(A,RA,'DisplayRange',[0 512])

Seleccione puntos de muestra y almacene sus coordenadas de mundo y coordenadas en vectores.xy Por ejemplo, el primer punto tiene coordenadas mundiales (38.44,68.75), el segundo punto es 1 mm a la derecha de él, y el tercer punto es 7 mm por debajo de él. El último punto está fuera del límite de la imagen.

xW = [38.44 39.44 38.44 -0.2]; yW = [68.75 68.75 75.75 -1];

Convierta las coordenadas universales en coordenadas intrínsecas utilizando .worldToIntrinsic

[xI, yI] = worldToIntrinsic(RA,xW,yW)
xI = 1×4

  123.0080  126.2080  123.0080   -0.6400

yI = 1×4

  220.0000  220.0000  242.4000   -3.2000

Los vectores resultantes son las coordenadas intrínsecas - y - en unidades de píxeles.xy Tenga en cuenta que el sistema de coordenadas intrínsecas es continuo y algunas coordenadas intrínsecas devueltas tienen valores no enteros. Además, extrapola las coordenadas intrínsecas del punto fuera del límite de la imagen.worldToIntrinsic

Lea un volumen 3D en el espacio de trabajo. Esta imagen consta de 27 fotogramas de imágenes de 128 por 128 píxeles.

load mri; D = squeeze(D); D = ind2gray(D,map);

Cree un objeto de referencia espacial asociado al volumen.imref3d Para fines ilustrativos, proporcione una resolución de píxeles en cada dimensión. La resolución es en milímetros por píxel.

R = imref3d(size(D),2,2,4)
R =    imref3d with properties:             XWorldLimits: [1 257]            YWorldLimits: [1 257]            ZWorldLimits: [2 110]               ImageSize: [128 128 27]     PixelExtentInWorldX: 2     PixelExtentInWorldY: 2     PixelExtentInWorldZ: 4     ImageExtentInWorldX: 256     ImageExtentInWorldY: 256     ImageExtentInWorldZ: 108        XIntrinsicLimits: [0.5000 128.5000]        YIntrinsicLimits: [0.5000 128.5000]        ZIntrinsicLimits: [0.5000 27.5000]  

Seleccione puntos de muestra y almacene sus -, -, y coordenadas mundiales en vectores.xyz Por ejemplo, el primer punto tiene coordenadas mundiales (108,92,52), el segundo punto está 3 mm por encima de él en la dirección +, y el tercer punto es 0,2 mm a la derecha de él en la dirección - .z+x El último punto está fuera del límite de la imagen.

xW = [108 108 108.2 2]; yW = [92 92 92 -1]; zW = [52 55 52 0.33];

Convierta las coordenadas universales en coordenadas intrínsecas utilizando .worldToIntrinsic

[xI, yI, zI] = worldToIntrinsic(R,xW,yW,zW)
xI = 1×4

   54.0000   54.0000   54.1000    1.0000

yI = 1×4

   46.0000   46.0000   46.0000   -0.5000

zI = 1×4

   13.0000   13.7500   13.0000    0.0825

Los vectores resultantes son los -, -, intrínsecos y las coordenadas en unidades de píxeles.xyz Tenga en cuenta que el sistema de coordenadas intrínsecas es continuo y algunas coordenadas intrínsecas devueltas tienen valores no enteros. Además, extrapola las coordenadas intrínsecas del punto fuera del límite de la imagen.worldToIntrinsic

Argumentos de entrada

contraer todo

Objeto de referencia espacial, especificado como u objeto.imref2dimref3d

Coordenadas a lo largo de la dimensión -en el sistema de coordenadas universales, devueltas como un escalar numérico o vector.x

Tipos de datos: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Coordenadas a lo largo de la dimensión -en el sistema de coordenadas universales, devueltas como un escalar numérico o vector. es la misma longitud que .yyWorldxWorld

Tipos de datos: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Coordenadas a lo largo de la dimensión -en el sistema de coordenadas universales, devueltas como un escalar numérico o vector. es la misma longitud que .zzWorldxWorld

Tipos de datos: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Argumentos de salida

contraer todo

Coordenadas a lo largo de la -dimensión en el sistema de coordenadas intrínsecas, especificadas como un escalar numérico o un vector. es la misma longitud que .xxIntrinsicxWorld

Tipos de datos: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Coordenadas a lo largo de la -dimensión en el sistema de coordenadas intrínsecas, especificadas como un escalar numérico o un vector. es la misma longitud que .yyIntrinsicxWorld

Tipos de datos: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Coordenadas a lo largo de la -dimensión en el sistema de coordenadas intrínsecas, especificadas como un escalar numérico o un vector. es la misma longitud que y .zzIntrinsicxWorldyWorld

Tipos de datos: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Introducido en R2013a