Получите значение пикселя как числовой массив
Пиксельные значения, полученные из imagemodel
объект может быть возвращен в нескольких форматах, подходящих для отображения в различных интерактивных инструментах обработки изображений.
Создайте модель изображения, связанную с цветным изображением.
h = imshow('flamingos.jpg');
im = imagemodel(h)
im = IMAGEMODEL object accessing an image with these properties: ClassType: 'uint8' DisplayRange: [] ImageHeight: 972 ImageType: 'truecolor' ImageWidth: 1296 MinIntensity: [] MaxIntensity: []
Выберите пиксель путем определения координат строки и столбца. Этот пиксель имеет (строка, столбец) координаты (100, 200).
r = 100; c = 200;
Получите числовое значение пикселя с помощью getPixelValue
функция.
pxValue = getPixelValue(im,r,c)
pxValue = 1x3 uint8 row vector
104 95 54
Получите информационную строку пикселя по умолчанию с помощью getDefaultPixelInfoString
функция. Эта строка зависит от типа изображения, но не использует значения пикселей. Пиксельная информационная строка подходит для использования с инструментом Pixel Information.
defaultPxInfoStr = getDefaultPixelInfoString(im)
defaultPxInfoStr = '[R G B]'
Используя тот же строковый формат, получите пиксельную информационную строку для заданного пикселя при помощи getPixelInfoString
функция.
pxInfoStr = getPixelInfoString(im,r,c)
pxInfoStr = '[104 95 54]'
Получите строку области пикселей по умолчанию с помощью getDefaultPixelRegionString
функция. Эта строка зависит от типа изображения, но не использует значения пикселей. Строка пиксельной области подходит для использования с инструментом Pixel Region.
defaultPxRegStr = getDefaultPixelRegionString(im)
defaultPxRegStr = 'R:000 G:000 B:000'
Существует два шага, чтобы получить строку области пикселей для заданного пикселя в том же строковом формате. Сначала получите функцию formatFcn
который форматирует числовые пиксельные значения при помощи getPixelRegionFormatFcn
функция. Затем задайте координату строки и столбца пикселя в качестве входных параметров, чтобы formatFcn
для получения форматированной строки.
formatFcn = getPixelRegionFormatFcn(im); pxRegStr = formatFcn(r,c)
pxRegStr = 1x1 cell array
{'R:104...'}
imgmodel
- Модель изображенияimagemodel
объектМодель изображения, заданная в виде скаляра imagemodel
объект.
r
- Координата строкиКоордината строки пикселя, заданная как положительное целое число или вектор положительных целых чисел.
c
- Координата столбцаКоордината столбца пикселя, заданная как положительное целое число или вектор положительных целых чисел.
pixval
- Значение пикселяЗначение пикселя, возвращаемое как одно из следующих.
Входной тип | Формат возврата |
---|---|
p пикселей полутонового цвета | p -элементный числовой вектор-строка |
p пикселей RGB | Числовой вектор-строка длины p *3 . Первые элементы p являются красным значением для каждого пикселя. Следующими элементами p являются зеленые значения для каждого пикселя. Последние элементы p являются синим значением для каждого пикселя. |
p двоичные пиксели | p - вектор логической строки элемента |
p индексированные пиксели | p численный массив -by-3. Каждая строка задает пиксель. Столбцы определяют красный, зеленый и синий компоненты пиксельного значения. |
drawpoint
| getPixelInfoString
| getPixelRegionFormatFcn
| impixel
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.