How to display/plot an RGB image on an irregular or rotated grid?

조회 수: 2 (최근 30일)
MrP
MrP 2015년 5월 21일
답변: Henrique Barbosa 2017년 10월 30일
I have an aerial image that has undergone some form of rotation, in an attempt to map it correctly to ground co-ordinates. The result of the rotation is irregularly spaced X and Y grids, along with the original Z (RGB) data.
Is there any way I can plot this new image in its rotated form, while maintaining the full RGB colour profile?
So far, I have only found a way to plot a grayscale version, using pcolor.
Some excerpts of the code are below:
X = [1410.99 1409.16 1407.33;1410.17 1408.35 1406.52;1409.36 1407.53 1405.71];
Y = [562.93 562.12 561.31; 563.88 563.06 562.25; 564.82 564.01 563.19];
Z(3,3,3)=0;
Z(:,:,1)=repmat(0,3,3);
Z(:,:,2)=repmat(0,3,3);
Z(:,:,3)=repmat(255,3,3);
Zgray = rgb2gray(Z);
figure
pcolor(X,Y,Zgray)
shading('interp')
This gives me a rotated plot, and when my full image has been converted to grayscale, it gives me some form of image overlaid onto the rotated grid.
What I wish to do is overlay the original RGB image onto this grid, does anyone know what plot function I can use?
I have tried most of the 'image' type functions, and am now thinking I may have to interpolate all the data onto a square, regular grid, is this correct?
Any help greatly appreciated!

답변 (1개)

Henrique Barbosa
Henrique Barbosa 2017년 10월 30일
Did you find an answer? I have had this same problem in many different situations with Matlab and never found a way.

카테고리

Help CenterFile Exchange에서 Lighting, Transparency, and Shading에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by