有關blkproc 命令的使用

2021-07-08 20:57:25 字數 1545 閱讀 7701

如果你讓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 名 縮排 就是預設 含在 下一級 不用寫 類似 結束 標籤。看起...