DeepFlowest

[Darknet] YOLO v4 custom데이터 훈련할 때 발생하는 image load error 본문

에러 해결 모음

[Darknet] YOLO v4 custom데이터 훈련할 때 발생하는 image load error

Orange57 2020. 10. 22. 09:28
728x90
반응형
SMALL

YOLO_mark로 학습시킬 데이터에 라벨링 하고, 라벨링한 데이터를 darknet내부 디렉토리에 위치시키고

./darknet detector train data/obj.data yolo-obj.cfg darknet19_448.conv.23

 

학습을 위한 코드를 돌렸는데, 다음과 같은 에러가 나왔다.

1. OpenCV, cuDNN 에러

 

에러1 : ./darknet: error while loading shared libraries: libopencv_highgui.so.4.4: cannot open shared object file: No such file or directory

에러2 : ./darknet:error while loading shared libraries:libcudnn.so.8

 

▶ OpenCV, cuDNN 버전 문제로 인한 에러로 OpenCV,  CUDA, cuDNN을 다 삭제하고 다음과 같은 버전으로 맞춰주었다.

2. 이미지 데이터 경로 에러

버전 문제를 다 해결해고 다시 코드를 돌려봤는데

다음과 같이 이미지를 불러 올 수 없다는 에러가 떴다. 

train.txt 파일의 내부 경로를 보니 YOLO_mark로 라벨링할 때 상대 경로로 기록된 것이다.

이를 절대 경로로 바꿔줘야 한다.

darknet 디렉토리 내부에 jupyter notebook을 하나 만들고

원래 있던 train.txt 파일을 train0.txt 파일로 이름을 변경하고

다음 코드를 돌리게 되면

txt = open('data/train0.txt','r')
f = open('data/train.txt','w')
while True :
    line = txt.readline()
    if not line:
        break
    f.write('Yolo_mark-master/'+line)
        
txt.close()
f.close()

 train.txt 파일을 다음과 같이 절대 경로로 변경할 수 있다.

 

이제 학습을 위한 코드를 돌리면 custom데이터로 훈련시킬 수 있다.

./darknet detector train data/obj.data yolo-obj.cfg darknet19_448.conv.23

 

728x90
반응형
LIST
Comments