blockLocationSet

Список местоположений блока в больших изображениях

Описание

blockLocationSet объект обеспечивает местоположения блоков, используемых для класса, балансирующегося в семантической сегментации и рабочих процессах обучения обнаружения объектов. Это используется blockedImageDatastore и boxLabelDatastore объекты задать местоположения блока, чтобы считать данные.

Создание

Можно создать blockLocationSet объект этими способами.

  • selectBlockLocations — Выберите блоки из целого блокированного изображения или в маскированной области блокированного изображения. Опционально задайте перекрытие и располагающий с интервалами между блоками.

  • balancePixelLabels (Computer Vision Toolbox) — Выберите блоки из помеченных блокированных изображений с данными о пиксельных метках (требует Computer Vision Toolbox™). Используйте эту функцию, чтобы выполнить класс, балансирующийся в рабочих процессах семантической сегментации.

  • balanceBoxLabels (Computer Vision Toolbox) — Выберите блоки из помеченных блокированных изображений с данными об ограничительной рамке (требует Computer Vision Toolbox). Используйте эту функцию, чтобы выполнить класс, балансирующийся в рабочих процессах обнаружения объектов.

  • blockLocationSet функция описана здесь. Используйте эту функцию, когда вы будете знать координаты блоков в блокированных изображениях.

Описание

пример

locationSet = blockLocationSet(ImageNumber,BlockOrigin,BlockSize) создает blockLocationSet возразите, что хранит местоположения BlockOrigin и размер BlockSize из блоков, которые будут считаны из набора блокированных файлов изображений, индексированных ImageNumber.

locationSet = blockLocationSet(ImageNumber,BlockOrigin,BlockSize,Levels) также задает уровень разрешения, на котором можно считать блоки из блокированных изображений.

Свойства

развернуть все

Номер изображения файлов изображений, содержащих чтение, блокирует в виде N-by-1 вектор из положительных целых чисел, где N является количеством блоков, заданных blockLocationSet. Значения не могут превысить количество блокированных изображений в blockedImageDatastore.

Пример: [1 1 1 2] указывает что blockedImageDatastore чтения четыре общих количества блоков, с первыми тремя блоками, прибывающими из первого blockedImage и четвертый блок, прибывающий из второго blockedImage в datastore.

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

Блокируйте источник в виде n-by-P числовая матрица, где n является количеством блоков, заданных blockLocationSet и P относится к количеству блоков. Каждая строка задает [x y] координата левого верхнего угла блока.

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

Размер блока в виде 1 N вектором из положительных целых чисел. Размер блока является тем же самым для всех блоков в blockLocationSet. N совпадает с NumDimensions свойство blockedImage объект.

Уровень разрешения каждого blockedImage в blockedImageDatastoreВ виде положительного целого числа или вектора из положительных целых чисел.

  • Когда вы задаете Levels как положительный целочисленный скаляр, blockedImageDatastore чтения все блоки из того же уровня разрешения.

  • Когда вы задаете Levels как вектор из положительных целых чисел, каждый элемент указывает на уровень разрешения в который blockedImageDatastore чтения блокируются от соответствующего blockedImage. Длина Levels должен равняться количеству blockedImage объекты в blockedImageDatastore.

Пример: [1 1 2 2 1] указывает что blockedImageDatastore содержа пять blockedImage объекты читают блоки на первом уровне разрешения сначала, во-вторых, и пятом blockedImage объекты и блоки на втором уровне разрешения от третьего и четвертого blockedImage объекты.

Примеры

свернуть все

Создайте блокированное изображение.

bim = blockedImage('tumor_091R.tif');
bigimageshow(bim)

Поскольку все блоки от того же изображения, imageNumber 1 для всех блоков. Для уровня разрешения выберите самое прекрасное разрешение. Задайте местоположения блока в x, y координаты.

imageNumber = [1, 1, 1, 1]';
levels = 1;
xyLocations = [[20 30 1]; [30 40 1]; [40 50 1]; [50 60 1]]
xyLocations = 4×3

    20    30     1
    30    40     1
    40    50     1
    50    60     1

blockSize = [300,300, 3];
locationSet = blockLocationSet(imageNumber,xyLocations,blockSize,levels);

Используйте набор местоположения блока, чтобы создать blockedImageDatastore содержа только заданные блоки.

bimds = blockedImageDatastore(bim,'BlockLocationSet',locationSet);

Считайте два блока за один раз из blockedImageDatastore.

bimds.ReadSize = 2;
while hasdata(bimds)
    blocks = read(bimds)
end
blocks=2×1 cell array
    {300×300×3 uint8}
    {300×300×3 uint8}

blocks=2×1 cell array
    {300×300×3 uint8}
    {300×300×3 uint8}

Отобразите блоки чтения.

montage(blocks,'BorderSize',5,'BackgroundColor','b');

Советы

  • blockLocationSet объект не читает или хранит данные от блокированных файлов изображений.

Смотрите также

| | (Computer Vision Toolbox) | (Computer Vision Toolbox) | (Computer Vision Toolbox) |

Введенный в R2020a