В MATLAB, как комментировать фигуру с изображением? - PullRequest
2 голосов
/ 14 апреля 2011

Я бы хотел наложить изображение поверх моей фигуры в определенной точке .. например Я хочу, чтобы "cherry.png" [24px X 24px] рисовался в нормализованной точке [0,20, 0,50] фигуры 600px X 600px. У меня есть доступ к набору инструментов обработки изображений, и я знаю о «imread ()», однако мне неясно, как наложить в определенной точке. Любые идеи / ссылки, которые я должен проверить?

1 Ответ

3 голосов
/ 15 апреля 2011

Если вы хотите, чтобы изображение размером 24 на 24 пикселя было по центру в нормализованной точке (0.2,0.5) (эквивалентно (120,300) в пикселях), то вы можете создать объект axes размером 24 на 24 пикселя с центром в вашей точке и добавление изображения к осям с помощью функции IMAGE .Например:

img = imread('cherry.png');  %# Read the data from your image file
hFigure = figure('Position',[100 100 600 600]);  %# Make the figure window
hAxes = axes('Parent',hFigure,...          %# Add the axes to the figure
             'Units','pixels',...          %#   with units of pixels
             'Position',[108 288 24 24]);  %#   so the position is easy to define
hImage = image(img,'Parent',hAxes);  %# Plot the image
set(hAxes,'Visible','off');          %# Turn the axes visibility off

Обратите внимание, что когда я загружал данные изображения, используя IMREAD , я предполагал, что это было 3-D RGB-изображение .Если это индексированное изображение , вам потребуется получить дополнительную выходную карту цветов из IMREAD , чтобы вы могли преобразовать индексированное изображение в RGB-изображение .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...