728x90

개발 관련/SW, App 관련 109

Darknet을 통한 Yolov3-tiny 훈련 Darknet을 통한 Yolo v3 tiny훈련 지난번에 Darknet을 이용하여 Yolov2-tiny로 커스텀데이터셋을 결국에는 Unity에 인식하는데 어느 정도 성공을 해서 이번에는 Yolov3-tiny를 시도해 보았다. 참고적으로 Unity의 Barracuda는 Yolov3을 지원한다. 지원하는 Barracuda의 버전은 살펴봐야 하겠지만 상위버전이면 지원할 것이다. Barracuda 매뉴얼에 나와 있다. 다만, Yolov3-tiny는 확인이 필요하다.  따라서 이번에는 이전보다 성능? 좋은 Yolov3-tiny로 훈련하여 인식해 보기로 했다. 이게 더 좋으면 이걸 써야되지 않겠는가.. 기본적인 cfg 설정은 기존의 Yolov3-tiny를 알맞게 수정해 준다.특히 filters부분이 이전 버전과 다.. 개발 관련/SW, App 관련 2024. 10. 7.
Unity 로우 폴리곤 행성 업데이트 Unity 로우 폴리곤 행성 업데이트 지난번 3D를 통해 유니티에 나무를 심었던 로우폴리곤 행성을 좀 더 업데이트해 봤다. 나무를 적절한 크기로 심고, 구름도 적절히 배치하고, 산도 만들고, 언덕도 만들고, 극지방도 만들어 각각 배치해서 괜찮다고 생각되는 결과물을 얻었다. 이와 함께 만든 구름을 좀더 이뻐 보이도록 쉐이더를 찾아 적절하게 수정하여 적용해 주었다.생각보다 쉐이더 다루는게 어려워서 마음에 들게 만드는 것이 참 어려웠다.현재 만든것이 그나마 괜찮다고 생각된 거라 추후에 시간 되면 조금은 더 조정해야 될 것 같다. 그리고 바다도 적절하게 쉐이더를 찾아 내것에 맞게 조정해 주고 등등 여러 가지 조절을 해 주었다.이 행성에 대한 쉐이더를 다뤘던게 2017년도니까 생각보다 오래되어 쉐이더 코드를 다루.. 개발 관련/SW, App 관련 2024. 10. 4.
Darknet 사물인식 진행 상황 Darknet 사물인식 진행 상황 지난번 커스텀데이터로 Darknet 훈련을 통해 가중치(.weights) 파일을 얻고 이 가중치를 통한 테스트는 정상적으로 잘되었었다. 문제는 이 가중치 파일을 다이렉트로 onnx 컨버팅이 되지 않아 다시 keras의 .h로 변환한 뒤 onnx로 변환했다. 그러나 변환한 keras로도 훈련이 되지 않았고 이를 변환한 onnx 파일을 Unity에서 적용하여 Android 앱으로 빌드하여 사물인식을 시도하였으나 그것도 제대로 된 Bounding Box 출력이 되지 않았다.  따라서 여기에서의 문제는 바로 keras의 .h로 변환하는데서 문제가 발생하는 것이라 확신했다.참고한 yad2k 의 이슈에서도 이 문제가 제기되었고 다른 방법으로 해결했다고 한 사항이 있으나 내게는 적용.. 개발 관련/SW, App 관련 2024. 9. 26.
Unity 앱으로 어린이 타겟층 개발시 가족정책 준수 관련 Unity 앱으로 어린이 타겟층 개발시 가족정책 준수 관련 Unity를 이용하여 가장 처음 앱을 만든 것이 유아용 앱이었다. 당시에는 낮은 버전으로 자바스크립트로 작성하여 배포하였다. 당시에는 지금처럼 보안 정책이 낮았었다. 배포 자체가 많지 않았으까.. 지금은 갈수록 보안정책이 강화되고 의도치 않은 행위에 대한 제재가 높아지고 있다. 아마도 앱을 이용하는 타겟층에 대한 보안 요구사항이라 볼 수 있을 것이다. 이제는 앱 콘테츠에 대한 이용 대상자의 나이대가 명확해지기 때문에 올바른 설정을 해야한다. 이와 더불어 준수해야 할 정책들도 지켜야만 앱을 유지시킬 수 있다. 초장기에 적용되었던 광고도 이제는 넣을 수가 없다. 그리고 개인정보 보호정책으로 우리 같은 개인은 그 어떠한 네트워크 설정이라도 앱이 내려갈.. 개발 관련/SW, App 관련 2024. 9. 15.
Python으로 이미지 사이즈 줄이기 Python으로 이미지 사이즈 줄이기 일반적인 이미지 관리툴을 사용하면 쉽게 다양하게 변경할 수 있긴 하지만 간단한 사항은 파이썬으로도 쉽게 변환할 수 있다. 먼저 pillow 라이브러리를 설치해 줘야 한다. pip install pillow 하면 금방 바로 설치된다. 변경한 이미지는 한 장이 아닌 폴더 내의 전체 이미지들의 사이즈를 변경하고자 하는 것이다. 굳이 한 장만 변경할 일은 별로 없을 것이다. 그러면 아래의 코드를 Image_resize.py로 저장하자.1234567891011121314151617from PIL import Imageimport osimport glob input_path = "./imageOriginal/*.jpg"file_list = [file for file in glo.. 개발 관련/SW, App 관련 2024. 9. 7.
keras의 HDF5(.h)로 변환시 utf-8 오류 해결방법 Darknet 훈련을 통한 가중치(.weights) 파일을 kera hdf5 포맷 변환시 아래와 같은 오류가 발생했다.model_config = json.loads(model_config.decode('utf-8')) 이는 패키지의 버전차이로 발생하는 것이며 간단하게 하위 버전으로 설치하면 해결된다. pip uninstall h5py pip install hypy==2.10.0 그러면 오류를 해결할 수 있다. 개발 관련/SW, App 관련 2024. 9. 5.
Darknet의 GPU버전 빌드 오류 해결 Unity Barracuda에서의 onnx 인식 오류.지난번 onnx 컨버팅 이후 Unity에 적용해 봤으나 인식하지 못하는 문제가 발생했다.물론 netron에서는 정상적으로 보이긴 했다. 결과적으로 원하는 곳에서 인식이 안되니 사용할 수가 없다.따라서 이번 것은 가중치 용량도 크고 해서 다시 데이터셋을 이용해서 yolo-tiny로 구성해 보고자 했다.  Darknet의 GPU 버전 빌드처음 시도할 때 아무래도 문제 해결에 시간이 많이 소요되고 오류도 많고 가능성도 적어 보여서 darknet_no_gpu버전으로 진행했었다.  시스템이 너무나 구려서 대부분의 옵션을 다음과 같이 사용할 수가 없었다. 그래서 시간이 너~~무 오래 걸렸다. 이미지 몇 장 하는데만 며칠이 걸렸으니 도저히 이대로는 진행하기가 곤란.. 개발 관련/SW, App 관련 2024. 8. 26.
Darknet의 weights를 onnx로 컨버팅 지난번부터 계속 괴롭혀 왔던 onnx 컨버팅을 진행하게 되었다. 시간이 오래 걸린 이유는 고집이 좀 있었는데 darknet의 커스텀 데이터셋 훈련결과의 weights(가중치)를 바로 onnx로 컨버팅 하기 위한 방법을 찾기 위한 것이었기 때문이다. 또한 이를 unity 2018 버전에서 사용하기 위해서는 Yolo v3 이하에서만 사용할 수 있다. Unity 2018의 barracuda가 거기까지만 지원하기 때문이다. 거기다 python과 필요한 패키지의 지원 버전이 맞지 않으면 오류를 쏟아내고 그 원인을 해결하기 위한 방법 또한 구글링을 해도 각기 다 다른 원인이 많아 해결하기가 너무나 까다로웠다. 버전 특성과 환경상 거의 안된다고 보면 된다. 현재는 Yolo v8인가 까지 나온 상태라 더욱 그렇다. 그.. 개발 관련/SW, App 관련 2024. 8. 21.
Android TargetSDK API 34 업데이트와 AD_ID 권한 지난해 초중순쯤 살아있는 앱들의 업데이트를 진행했었다. 그때는 API 31로만 해서 특별한 설정이 없이도 업데이트가 가능했다. 하지만 방치했던 것을 살펴보니 계속되는 경고 알림이 떠서 자세히 보게 되었다. 앱이 삭제된다나 어쩐다나... 해서..이번에는 API 34 이상 타겟팅이 되어야 한다고 하니 필요한 이상 해 줘야 할 것 같다. 그런데 문제는 지난해에 API 31까지만 한 것이 Unity 2018 버전에서 잘 안되었기 때문이었다. 아직도 쓰고 있으니..아무튼 그래서 이번에 다시 시도하였다.  우선 Android Studio를 통해 SDK를 API를 35까지 업데이트하였다.다음으로 예전부터 기존에 사용하던 SDK 폴더에 업데이한 내용만 복사를 하였다. build-tools, platforms 의 내용만.. 개발 관련/SW, App 관련 2024. 8. 18.
Unity ARCore 설정(예전 버전) Unity에서 Google의 ARCore 사용에 대한 설정을 기록을 남겨본다.현재는 AR Foundation으로 사용되고 있어서 ARCore의 버전은 2021년도에 1.25 버전까지만 나와 있는 상태다.Releases · google-ar/arcore-unity-sdk (github.com) Releases · google-ar/arcore-unity-sdkARCore SDK for Unity. Contribute to google-ar/arcore-unity-sdk development by creating an account on GitHub.github.com 어쨌든 현재 내가 주력으로 Unity 2018.4.3을 사용하고 있어서 업그레이드를 하지 않는 이상 ARCore를 사용할 것이다.그런데 약 .. 개발 관련/SW, App 관련 2024. 8. 15.
728x90