創(chuàng)新互聯(lián)www.cdcxhl.cn八線動態(tài)BGP香港云服務(wù)器提供商,新人活動買多久送多久,劃算不套路!
成都創(chuàng)新互聯(lián)公司是一家專業(yè)提供太原企業(yè)網(wǎng)站建設(shè),專注與網(wǎng)站制作、成都做網(wǎng)站、HTML5建站、小程序制作等業(yè)務(wù)。10年已為太原眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站建設(shè)公司優(yōu)惠進(jìn)行中。這篇文章主要為大家展示了OpenCV Python如何實(shí)現(xiàn)圖像指定區(qū)域裁剪,內(nèi)容簡而易懂,希望大家可以學(xué)習(xí)一下,學(xué)習(xí)完之后肯定會有收獲的,下面讓小編帶大家一起來看看吧。
在工作中。在做數(shù)據(jù)集時(shí),需要對圖片進(jìn)行處理,照相的圖片我們只需要特定的部分,所以就想到裁剪一種所需的部分。當(dāng)然若是圖片有規(guī)律可循則使用opencv對其進(jìn)行膨脹腐蝕等操作。這樣更精準(zhǔn)一些。
一、指定圖像位置的裁剪處理
import os import cv2 # 遍歷指定目錄,顯示目錄下的所有文件名 def CropImage4File(filepath,destpath): pathDir = os.listdir(filepath) # 列出文件路徑中的所有路徑或文件 for allDir in pathDir: child = os.path.join(filepath, allDir) dest = os.path.join(destpath,allDir) if os.path.isfile(child): image = cv2.imread(child) sp = image.shape #獲取圖像形狀:返回【行數(shù)值,列數(shù)值】列表 sz1 = sp[0] #圖像的高度(行 范圍) sz2 = sp[1] #圖像的寬度(列 范圍) #sz3 = sp[2] #像素值由【RGB】三原色組成 #你想對文件的操作 a=int(sz1/2-64) # x start b=int(sz1/2+64) # x end c=int(sz2/2-64) # y start d=int(sz2/2+64) # y end cropImg = image[a:b,c:d] #裁剪圖像 cv2.imwrite(dest,cropImg) #寫入圖像路徑 if __name__ == '__main__': filepath ='F:\\\maomi' #源圖像 destpath='F:\\maomi_resize' # resized images saved here CropImage4File(filepath,destpath)