python 批量修剪圖片數據集

應用SSD進行物體檢測,做了一個數據集,命名規則如下:

 

發現每張圖片的大小不一樣,需要對圖形進行修剪

1.修剪代碼如下所示:

import cv2
import os
dir_name="/home/kd/PandaDetect/datasets/JPEGImages/"
pic_type=".jpeg"
dir_name_re="/home/kd/PandaDetect/datasets/JPEGImagesR/"
def visitDir(dir_name):
    if not os.path.isdir(dir_name):
        print('Error:"',dir_name,'"is not a directory or does nort exist.')
        return
    else:
        global x
        try:
            for lists in os.listdir(dir_name):
                sub_path=os.path.join(dir_name,lists)
                x+=1
                print('No.',x,' ',sub_path)
                if os.path.isdir(sub_path):
                    visitDir(sub_path)
        except:
            pass
#調用函數,設置相關的參數
x=0
visitDir(dir_name)
len=x
i=1

#對120張圖片進行修剪,利用循環的方式自動進行
#str()將int轉換爲str,字符可以直接相加
while i<=len:
    img = cv2.imread(dir_name + str(i) + pic_type)
    img_resize=cv2.resize(img, (128, 128), interpolation=cv2.INTER_CUBIC)
    cv2.waitKey(1000)
    cv2.imshow("picture",img_resize)
    cv2.imwrite(dir_name_re + str(i)+"r" + pic_type, img_resize)
    i+=1


 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章