Python-numpy实现灰度图像的分块和合并方式

我就废话不多说了,直接上代码吧!

from numpy import *

import numpy as np

import cv2, os, math, os.path

from PIL import Image

base="F:\\Spy_CNN\\pythonCode\\cvSPY\\cvTest\\LBP\\LBPImag3\\"

base2="F:\\ProgrameCode\\FaceDataLib\\orl_Arry\\"

imageOld=cv2.imread(base2+"s1_1.bmp")

image=cv2.cvtColor(imageOld,cv2.COLOR_BGR2GRAY)

'''图像的合成'''

H,W=image.shape#(112, 92)

kuai=5

a=1#为了好调程序

maskx,masky = H/kuai,W/kuai  #29 14

toImage=np.zeros((H+(kuai-1)*a,W+(kuai-1)*a))

toImage.shape

#您画画图,总结规律,就可以想出来了

for i in range(kuai):

    for j in range(kuai):

        '''float64 array'''

        faceZi=image[int(i*maskx): int((i+1)*maskx),int(j*masky) :int((j+1)*masky)]

        cv2.imwrite(base+str(i)+str(j)+".bmp",faceZi)

#        toImage[int(i*maskx)+a: int((i+1)*maskx)+a,int(j*masky)+a :int((j+1)*masky)+a]=faceZi  

        toImage[int(i*maskx)+i: int((i+1)*maskx)+i,int(j*masky)+j :int((j+1)*masky)+j]=faceZi            

cv2.imwrite(base+"toImage.bmp",toImage)

#最简单的,直接在灰度图像上画出一条黑线,只是会丢失一些像素的数据

for i in range(1,kuai):

    print(i)

    toImage[int(i*maskx),:]=0

    toImage[:,int(i*masky)]=0

cv2.imwrite(base+"toImage.bmp",toImage)

 

以上这篇Python-numpy实现灰度图像的分块和合并方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

以上是 Python-numpy实现灰度图像的分块和合并方式 的全部内容, 来源链接: utcz.com/z/336077.html

回到顶部