中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

通過Python批量處理套娃式文件夾的方法

發布時間:2020-08-26 09:47:43 來源:億速云 閱讀:173 作者:小新 欄目:編程語言

這篇文章主要介紹通過Python批量處理套娃式文件夾的方法,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

前言

在我對項目組的一些訓練圖像進行預處理的時候,發現處理的圖像是分好了類,在文件夾里的文件夾里,套娃式存儲的,所以對我批處理,以及按原文件夾規則進行存儲的時候,就會造成很大困擾
但通過下面幾個函數的結合,幫我順利的完成了一系列的預處理。

一、用不膩的芷山庫

1.安裝庫

pip安裝:

pip install zisan

2.getFiles函數

函數調用:

import zisan.FileTools as zf
file_path = 'C:/Users/xxx/Desktop/2016/Annotations'
whole_file = zf.getFiles(file_path)

圖片存儲在 :件夾2016 -> 文件夾Annotations ->子文件夾 -> 00000.png
通過getFiles函數,可以將Annotations中的所有文件夾里的所有圖片路徑調出來

也就是說,getFiles函數是將文件夾里面的所有文件路徑調出來,不管中間有無子文件夾

二、其他函數

1.os.listdir函數

該函數調用后會返回路徑底下文件夾的名稱,以字符串的形式儲存在列表里

代碼如下:

import os
file_path = 'C:/Users/xxx/Desktop/2016/Annotations'
file_names = os.listdir(file_path)
print(file_names)

效果:

通過Python批量處理套娃式文件夾的方法

通過Python批量處理套娃式文件夾的方法

2.os.mkdir函數

代碼:

import os
new_file_path = 'C:/Users/xxx/Destop/2016/newfile'
os.mkdir(new_file_path)

用于創建新文件夾

三、運用

要求:處理Annotations文件夾中的每個子文件夾中的圖片,并按原本的規則存儲在newfile新文件夾里的相應位置,命名規則如00000.jpg

import zisan.FileTools as zf
import os
import cv2
from skimage import io

file_path = 'C:/Users/xxx/Desktop/2016/Annotations'
new_file_path = 'C:/Users/xxx/Destop/2016/newfile'

file_names = os.listdir(file_path)
#獲取Annotations文件夾的子文件夾名稱

for i in file_names: #遍歷每個子文件夾名稱
  Index = 0
  file_name = file_path + '/' + i #巧妙運用+號得到改子文件夾的路徑
  os.mkdir(new_file_path + '/' + i) #在newfile里創建一個與子文件夾名稱相同的文件夾
  whole_pic = zf.getFiles(file_name) #用getFiles函數讀取子文件夾內的圖片路徑
  for f in whole_pic:
    msk = io.imread(f)
		msk=cv2.cvtColor(msk,cv2.COLOR_RGBA2GRAY)
    msk[np.where(msk!=0)]=255
    io.imsave(new_file_path + '/' + i + '/' + str("%05d" % Index) + '.jpg' , msk)
     #處理命名可直接+'.jpg'讓其以jepg形式存儲
    Index += 1

這就是我解決文件夾處理問題的基本思路和流程,各個函數可以搭配使用,放入循環外或內根據具體要求都有著不同的效果。

以上是通過Python批量處理套娃式文件夾的方法的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

蒙城县| 延寿县| 抚宁县| 麻城市| 岑溪市| 蒙城县| 布尔津县| 南部县| 田东县| 宜春市| 古交市| 同德县| 玉山县| 太白县| 安泽县| 扶沟县| 泰州市| 鱼台县| 济宁市| 津南区| 镶黄旗| 汤原县| 冀州市| 大城县| 衢州市| 油尖旺区| 吉隆县| 新竹县| 温宿县| 东乡族自治县| 江安县| 东源县| 永春县| 吴江市| 安泽县| 青海省| 田阳县| 东阿县| 镇原县| 绥化市| 石泉县|