python檔名讀取,將txt中每行的最後一個字元提取放入另一個txt中,python批量轉化tif檔案為jpg
阿新 • • 發佈:2019-01-26
把需要的部分註釋回來就好
# ===============讀取資料夾內檔案並輸出檔名到某txt上======================== # rootdir = "./test" # # file_object = open('test1.txt','w') # # for parent,dirnames,filenames in os.walk(rootdir): # for filename in filenames: # # print filename # file_object.write(filename+ '\n') # file_object.close() # ====================讀取原始圖片地址,根據txt內檔名與數量save_file_number進行圖片格式轉換========== # data_base_dir = "D:/tupianfenlei/chen/test" # 存放原始圖片地址 # save_dir = "D:/tupianfenlei/chen/test1" # 儲存生成圖片地址 # # 存放圖片名及目標區域(x,y,w,h)的txt檔案地址 # # 形如:000001.tif 87 90 126 160,下面只需要用到圖片名,也可不寫目標區域(x,y,w,h) # read_file_name_rect = "test1.txt" # # # =========== read rect file =============== # with open(read_file_name_rect, "r") as ins: # 以只讀方式開啟檔案read_file_name_rect,並將其賦值給ins # array_rect = [] # 定義一個空列表,讀檔案中每行,作為其一個元素 # for line in ins: # 依次讀ins中每個元素 # array_rect.append(line) # 將line元素,新增到列表array_rect最後 # array_rect = array_rect[1:] # 切片,捨棄第0個,從第1個取到最後一個 # number_of_lines = len(array_rect) # 取列表長度,即列表中有多少個元素。 # print ("number_of_lines:", number_of_lines) # 輸出列表元素個數 # # # =========== Start processing =============== # save_file_number = 38365 # 定義變數,表示儲存圖片的個數 # # for current_rect in range(0, number_of_lines): # current_rect依次取值0,1,2.....number_of_lines-1 # if current_rect % 10 == 0: # 每10次輸出一次 # print ("Processing rect number " + str(current_rect)) # current_info = array_rect[current_rect].split() # 在列表中,以空格為界,對字串進行切片處理 # current_image_name = current_info[0] # 圖片名 # # (x,y)表示圖片左上角座標,w表示寬,h表示高 # # x = max(0, int(current_info[1])) # # y = max(0, int(current_info[2])) # # w = int(current_info[3]) # # h = int(current_info[4]) # # if current_image_name is None: # 檢查圖片名是否存在 # continue # continue:結束本次迴圈,break:結束當前整個迴圈 # read_img_name = data_base_dir + '\\' + current_image_name # 右邊進行拼接,得到左邊檔名 # if not os.path.exists(read_img_name): # 檢查檔案是否存在 # continue # img = cv2.imread(read_img_name) # # 呼叫opencv讀取圖片 # # cropped_img = img[y : y + h, x : x + w] #取原圖片(y:y+h,x:x+w)區域,作為裁剪新圖片 # # 將新圖片檔名和地址寫入file_name中,zfill(width),width:最後的字串寬度 # file_name = save_dir + "\\dh2_" + str(save_file_number).zfill(4) + ".jpg" # save_file_number += 1 # cv2.imwrite(file_name, img) # 儲存圖片(cropped_img)到指定位置(file_name)</span>