For Beginners

[텐서플로]로 머신러닝하기 본문

2021 이전 자료들/AI

[텐서플로]로 머신러닝하기

.log 2019. 8. 1. 23:27
728x90

python monodepth_main.py --mode test --data_path trainset/ --output_directory disparityset/ --filenames_file utils/filenames/kitti_test_files.txt --log_directory tmp/ --checkpoint_path tmp/model_train/model-181250

 

일단 이렇게 넣어서 다시 돌리는데, 

문제는 여기 output_disparityset에 아무 반응을 하지 않는다는 것이다.

분명 여기에 output이 저장이 되어야 하는데,

그래서 이 에러를 고치는 과정을 여기에 적을까 한다.

 

음 코드를 뜯어봣는데

 

이게 output이 맞았다.

근데 음 왜일까

 

왜 안되는걸까

왜 이미지 형태로 볼수가 없는것일까

 

python monodepth_simple.py --image_path example/image2.jpg --checkpoint_path tmp/model_train/model-181250

 

내가 readme 뒷부분만 엄청 읽고 앞에를 안읽어서 이런 참사가 일어났는데,

논문 저자는 이런 부분을 위해서 이거는 또 다르게 알려주었다....

 

그래서 내가 training을 진행한 친구를 통해서 이렇게 이미지를 테스트해볼 수 있도록 했다.

 

근데 이런 에러가 났다.

 

 

Couldn't open CUDA library cufft64_80.dll
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\cuda\cuda_fft.cc:344] Unable to load cuFFT DSO.
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\dso_loader.cc:135] successfully opened CUDA library nvcuda.dll locally
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\dso_loader.cc:126] Couldn't open CUDA library curand64_80.dll
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\cuda\cuda_rng.cc:338] Unable to load cuRAND DSO.

 

 

cufft64_80.dll과 curand64_80 이 친구들을 다운로드를 받아야 했다

 

그러면 일단 에러 검색을 해보는데 딱히 그런 에러는 없다.

그리고 쿠다는 매우 멀쩡히 설치되어 있다.

path상태를 보겠다.

 

보니까 path가 빠져있긴 한다.

근데 이게 문제인거 맞나..?

긴가민가 일단 해보겠다.

 

음 이게 문제는 아닌가보다.

 

아 문제를 찾은 것 같다.

다른 블로그의 글과 비교를 해보니까 나의 cuda가 좀 이상하게 설치된 것 같다.

그래서 쿠다를 지우고 다시 깔아보려고 한다.

 

걍 이거 다 지워버리자.

 

 

(tensorflow) D:\monodepth-master\monodepth-master>deactivate

D:\monodepth-master\monodepth-master>activate tensorflow

 

자 이거 알아두고 다 종료한 다음에 쿠다만 다시 깔자.

 

 

일단 이렇게 제거를 했다.

그리고 이제 디렉토리로 가서 삭제하자.

 

컴퓨팅 툴킷만 지웠다.

 

 

 

후아후아 다와서 이게 무슨 고생

 

 

 

 

설치중

이제 예쁘게 나온다.

그러면 이제 다시 아까의 구문을 실행해보겠다.

 

 

딴거 다 되는데 cudnn만 안된다. 그래서 이거를 해결하려고 한다.

 

 

자 이제 scipy만 해결하면 된다.

 

 

 

일단은 이렇게 했다.

그리고 

또 에러.

해결.

 

에러와 해결.(해결 안됨)

해결 2

 

 

오?

 된다????

오??????

오오???

 

 

일단 큰산 하나 넘었으니까 퇴근!

여기서 결과값 저장하는 경로는 여기로 아마 될 것같다.

 

 

 

후아 이 상태에서 계속 에러가 나는데 뭘까

 

음 그냥 읽을 수 없는 에러인가...?

 

python monodepth_simple.py --image_path example/image2.jpg --checkpoint_path tmp/model_train/model-181250

 

이거 돌리는 중이다...

일단 관리자 권한으로 실행을 해보겠다.

 

 

그냥 테스트가 완료되었다 아니면, 말없이 종료되는 경우가 많지 않나...?

왜 이렇게 오래 걸리냐구 이미지 하나 테스트하는데..

 

 

아무래도 cudnn에러가 또 난 것 같다.

아 시스템 path가 잘못 되었을라나?

 확인해봐야지

 

음 path에는 문제가 없었다.

그러면 일단 cuda를 바꾸었는데 시스템을 끄지 않은 것이 문제가 된 것일 수도 있다고 생각해서

컴퓨터를 껐다가 켜보기로 했다.

 

아 근데도 안되는 것이다.

http://tuxvoid.blogspot.com/2017/08/tensorflow-could-not-create-cudnn.html

 

TensorFlow: could not create cudnn handle: CUDNN_STATUS_INTERNAL_ERROR

A blog containing tips and solution to computer science, software and programming, and other problem that I encountered in my daily activities.

tuxvoid.blogspot.com

그래서 여기 사이트를 참고하였다.

 

이렇게 바꾸어보았다.

근데도 안되는 것이다 ㅂㄷㅂㄷ

케라스 import를 하면 되는 것 같긴 해서 일단 import를 해주었는데, keras를 깔아보겠다.

 

음 케라스도 안되고 사실 우분투면 force문을 이용해서 .nv를 지워주면 된다고 사람들이 말해주었는데, 윈도우의 경우

어디에 설치되었는지 모르겠어서 하

 

http://bme808.blogspot.com/2017/04/ml-anacoda-tensorflow-windows10-cpu.html

 

[ML] Anacoda + Tensorflow + Windows10 (CPU버전)

설치 환경 windows10 (64bit) Anaconda 4.3.9 설치 순서 우선 Anaconda Prompt를 관리자 모드로 실행. Anaconda version확인하기 (D:\MMMIL\anaconda) C:\WI...

bme808.blogspot.com

그래서 일단은 night버전을 깔면 해결 된다는 사람들도 있어서, 이 말을 믿고 한번 해보겠다.

 

 

pip install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/windows/cpu/tensorflow-1.0.1-cp35-cp35m-win_amd64.whl

불러오는 중입니다...

후 일단은 이거 돌렸다.

나이트버전...으로 돌리는거다.ㅠ

 

 

음? 에러 겁나 낫는데 done이 뜨긴 떳다.

아 에러가 나지만, 이걸로 돌리는게 맞긴 했나보다.

허허

아까는 gpu관련 에러랑 cudnn에러가 많이 났는데,

그 에러들이 모조리 사라진 것을 볼 수 있었다.

 

와!!!!!!나왔다!

근데 생각보다 kitti 이미지가 아니라서,

예쁘게 나오지는 않지만,,, 그래도 먼 거리치고 예쁘게 나오는 것 같다!

 

앗 근데 문제가 생겼다ㅠㅠ

dehaze된 이미지의 경우, 결과가 좋지 못하다는 것을 알게 되었다.

하긴 dehaze된 사진의 경우는 그 안개자체의 깊이를 측정할수도 있을 것이다.

 

이런거 보면...

아무래도 dehaze된 이미지의 깊이 측정은 거의 불가능하다는 것을 알 수 있을 것 같다.

그러면 일단 안개가 없는 이미지나 실내 이미지도 확인해보겠다.

 

이야 색이 강렬하면 기깔나게 잘 측정하는 것 같다.

 

완전 정확하지는 않지만, 그래도 괜찮게 측정하는 편인 것 같다.

 

가끔 보다보면 사물과 배경의 차이에 대해서 잘 모르는 것 같긴 한데, 일단 구름을 가까이 있는 친구라고 측정하지 않았다는 것도 굉장히 좋은 예시인 것 같다.

 

실내 이미지의 경우, fog를 임의로 넣은 것에 대해서는 별로 반응이 없다는 것을 알았다.

근데 여기서 음....사실 fog를 물체로 인식한 것 같기도 한데 뭐 귀신도 아니고 어쩌다가 이런 disparity가 나왓는지는 잘 모르겠다.

결론으로는

어떤 것은 진짜 별로이고, 어떤 것은 진짜 잘되는데, 이거는 아무래도 그 깊이를 측정하는 kitti이미지가 도로상의 이미지만을 담은 친구이기 때문에, 도로상에서 보기 어려운 이미지의 경우, 잘 인식하지 못한다는 것 같다.

(그래도 용케 브릿지 사진은 인식했네..._)

Comments