Есть ли замена для blockproc в Matlab?

Я использовал blockproc для обработки изображений поблочно. К сожалению, blockproc является частью Image Processing Toolbox, которого у меня нет на моем персональном компьютере.

Есть ли комбинация функций в базе Matlab, которая может заменить blockproc ?


Моя первоначальная догадка заключалась в том, чтобы использовать im2col для преобразования каждого блока в столбцы, а затем arrayfun для обработки каждого столбца. Затем я понял, что im2col также является частью Image Processing Toolbox, так что это не решает мою проблему.

Вот пример использования MAT2CELL. Он делит изображение на плит N-by-M и обрабатывает случай, когда размер изображения не равномерно делится на количество fragmentов.

 %# 2D grayscale image I = imread('coins.png'); %# desird number of horizontal/vertical tiles to divide the image into numBlkH = 4; numBlkW = 4; %# compute size of each tile in pixels [imgH,imgW,~] = size(I); szBlkH = [repmat(fix(imgH/numBlkH),1,numBlkH-1) imgH-fix(imgH/numBlkH)*(numBlkH-1)]; szBlkW = [repmat(fix(imgW/numBlkW),1,numBlkW-1) imgW-fix(imgW/numBlkW)*(numBlkW-1)]; %# divide into tiles, and linearize using a row-major order C = mat2cell(I, szBlkH, szBlkW)'; C = C(:); %# display tiles i subplots figure, imshow(I) figure for i=1:numBlkH*numBlkW subplot(numBlkH,numBlkW,i), imshow( C{i} ) end 

Входное изображение и полученные fragmentы:

input_imageплитка

Не будет ли mat2tiles вместе с cellfun и cell2mat делать больше или меньше того, что делает blockproc ?

Вы можете написать оболочку самостоятельно, чтобы она использовала те же аргументы, что и blockproc , я не думаю, что это должно быть так сложно сделать.

  • Как уменьшить количество цветов в изображении с помощью OpenCV?
  • Объединение двух изображений
  • OpenCV C ++ / Obj-C: расширенное определение квадратов
  • почему список шрифтов пуст для imagemagick?
  • opencv рисует 2d гистограмму
  • Как преобразовать изображение RGB в оттенки серого, но сохранить один цвет?
  • Эффективная реализация `im2col` и` col2im`
  • Простое обнаружение объектов с использованием OpenCV и машинного обучения
  • Повернуть bitmap под реальным углом
  • Сравнение двух гистограмм
  • пропорции перспективно-деформированного прямоугольника
  • Давайте будем гением компьютера.