요즘 이미지 처리 작업을 하고 있어서 cv2 라이브러리를 많이 사용하는데, 하루는 이런 오류가 발생했다.
integrity가 맞지 않아서 오류가 발생하는 것.
구글링을 해본 결과 해답을 얻을 수 있었다.
https://stackoverflow.com/questions/72022176/warning-cant-open-read-file-check-file-path-integrity
OpenCV 라이브러리로 파일을 읽을 때는 파일 이름에 특수문자가 있어서는 안 된다는 것. ( _ 언더바는 된다.)
특수문자 뿐만이 아니라 파일 이름에 한글도 있어서는 안 되었다. (디렉토리도 마찬가지)
즉 다수의 한국어로 된 파일을 갖고 있는 나는 이걸 해결해주기 위해 또 다른 작업을 해야만 했다...
import os
# Define the directory containing PNG files
directory = "path/to/your/directory" # Replace with your directory path
# Define a renaming pattern
new_name_prefix = "image" # Replace with your desired prefix
# Iterate over all files in the directory
for index, filename in enumerate(os.listdir(directory)):
if filename.endswith(".png"): # Only process .png files
# Generate new file name
new_name = f"{new_name_prefix}_{index+1}.png"
# Get the full path for the old and new names
old_file_path = os.path.join(directory, filename)
new_file_path = os.path.join(directory, new_name)
# Rename the file
os.rename(old_file_path, new_file_path)
print("File renaming complete!")
GPT4o 로 빠르게 생성한 파일 이름 일괄 변경 방법이다. 구글이나 네이버를 치면 뭐 쭉 드래그해서 한 번에 바꾸기, 네이버 프로그램 사용하기 등이 나오는데 드래그해서 일괄 변경하는 방법은 윈도우 시스템상 같은 파일 이름으로 변경하면 소괄호 ()로 구분하는 시스템 때문에 적용이 불가능하다. OpenCV는 소괄호도 특수문자로 취급하여 파일을 읽지 못한다. 프로그램을 깔 바에는 그냥 이렇게 파이썬으로 한 번에 바꾸는 게 훨씬 편한 것 같다.
'파이썬' 카테고리의 다른 글
[파이썬] 클라우드에서 작업한 대용량 파일 쉽게 로컬로 다운받는 법 (파이썬 http 서버 오픈) (0) | 2024.12.10 |
---|---|
[CV] opencv ImportError: libGL.so.1: 오류 해결법 (2) | 2024.12.08 |
Colab에 도입된 AI 사용해보기 - ChatGPT, Bard 와 코드 생성 수준 비교 (2) | 2023.12.17 |
Pandas 판다스 데이터프레임 열 추가, 합치기 등 (concat, merge, join) + 삭제된 append (0) | 2023.10.22 |
파이썬 - 텍스트 데이터 전처리 파이프라인 (2) : Sklearn Pipeline (0) | 2023.08.28 |