應用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