如果你讓matlab幫你計算最好的塊大小,用bestblk函式,
[mb,nb] = bestblk([m n],k) 可以得到分塊之後的行數和列數,
乘一下就是塊數
命令:blkproc
從matlab2009開始用 blockproc
功能:對影象進行分塊處理
函式呼叫形式: b = blkproc(a,[m n],fun, parameter1, parameter2, ...)
b = blkproc(a,[m n],[mborder nborder],fun,...)
b = blkproc(a,'indexed',...)
引數解釋:
[m n] :影象以m*n為分塊單位,對影象進行處理(如8畫素*8畫素)
fun:
應用此函式對分別對每個m*n分塊的畫素進行處理
parameter1, parameter2: 要傳給fun函式的引數
mborder nborder:對每個m*n塊上下進行mborder個單位的擴充,左右進行nborder個單位的擴充,擴充的畫素值為0,fun函式對整個擴充後的分塊進行處理。
例:乙個矩陣,比如
[1 2 3 4 5 6 7 8 ;
9 10 11 12 13 14 15 16;
17 18 19 20 21 22 23 24;
25 26 27 28 29 30 31 32]
要每4元素求和,比如
[1 + 2 + 9 +10 3+4+11+12 5+6+13+14 7+8+15+16 ;
17+18+25+26 19+20+27+28 21+22+29+30 23+24+31+32]
得出一新的矩陣。
採用blkproc命令,按塊執行某函式。
首先你需要自己新建乙個函式sum2.m(2維求和函式)
其內容是
function y=sum2(x)
y=sum(sum(x));
然後就可以利用blkproc命令完成你的任務。
b=blkproc(a,[2 2], 'sum2')
或fun=@sum2; fun='sum2';
b=blkproc(a,[2 2], fun)
得到b =
22 30 38 46
86 94 102 110 如
(1)打馬賽克程式:
i = imread('rice.png');
fun = @(x) std2(x)*ones(size(x));
%此處的x表示被處理的那個矩陣
i2 = blkproc(i,[32 32],fun);
imshow(i), figure, imshow(i2,'displayrange',)
(2)分塊取閾值程式:
i = imread('rice.png');
fun = @(x)im2bw(x,graythresh(x));
i2 = blkproc(i,[32 32],fun);
imshow(i), figure, imshow(i2,'displayrange',)
有關vim的使用
重點內容 vi編輯器有三種模式 命令模式,編輯模式,末行模式 開啟vi後首先是命令模式,用i,o,a等進入編輯模式,按esc退出編輯模式。w 儲存檔案但不退出vi w file 將修改另外儲存到file中,不退出vi w 強制儲存,不推出vi wq 儲存檔案並退出vi wq 強制儲存檔案,並退出vi...
有關sqlmap的使用
首先貼一段詳細引數說明,相當於說明書了 sqlmap詳細命令 options 選項 target 目標 以下至少需要設定其中乙個選項,設定目標url。request 請求 這些選項可以用來指定如何連線到目標url。enumeration 列舉 這些選項可以用來列舉後端資料庫管理系統的資訊 表中的結構...
有關 pug loader 的使用
npm i pug pug loader 二 配置 vue cli 3 以下版本修改webpack vue cli 3 以上版本 是在vue.config.js 裡面修改 三 使用 lang pug 就是 預設 div 的 class 名 縮排 就是預設 含在 下一級 不用寫 類似 結束 標籤。看起...