Как применить движущиеся окна к 2D матрице в MATLAB?

Вы можете поместить Customer на полку фильтра и на вкладку условия, используя следующую формулу min([Category] = "Furniture") Для логических выражений True> False, поэтому MIN (условие) имеет значение true, если и только если условие истинно для каждой записи. Таким образом, MIN () для логических значений можно прочитать как «every ()», а MAX () можно прочитать как «any ()»

Если вы много работаете с этой группой клиентов, вы можете определить Набор Клиентов, которые покупают только мебель, а не фильтр. Существует множество способов думать о множествах, но один из них - просто сохраненный именованный фильтр.

8
задан sundar - Reinstate Monica 25 March 2009 в 14:45
поделиться

1 ответ

Если у Вас есть панель инструментов обработки изображений затем, можно использовать blkproc для обработки nxm блоков изображения с помощью пользовательских определенных функций. Вот пример

function Ip = imageProcessed(II,blockSize)
   % FUNCTION imageProcessed calculates average value of blocks of size nxm
   % blocks 
      if nargin<2,
         % default/example value for block size
         blockSize = [3 4];
      end

      if size(II,3)>1,
          % blkproc requires a grayscale image
          % convert II to gray scale if it is RGB.
          II=rgb2gray(II)
      end


      % Custom average function.
      myAveFun = @(x) ones(size(x))*sum(x(:))/length(x(:));

      % use blkproc to process image
      Ip = blkproc(II,[blockSize(1), blockSize(2)],myAveFun);
end

Примечание:

С MATLAB 2009b's Панель инструментов Обработки изображений, blkproc была depcrecated и заменила blockproc (см. раздел R2099b здесь). Таким образом, последние две строки могли быть изменены на:

 myAveFun = @(blkstrct) ones(size(blkstrct.data))*mean(blkstrct.data(:))
 Ip = blockproc(II,blockSize,myAveFun);
5
ответ дан 5 December 2019 в 23:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: