인프런 커뮤니티 질문&답변

sungho kang님의 프로필 이미지
sungho kang

작성한 질문수

딥러닝 CNN 완벽 가이드 - Fundamental 편

권철민 교수님 모든 강의를 다 듣고 있는 학생입니다.

해결된 질문

작성

·

767

1

안녕하세요 권철민 교수님 

 

교수님의 모든 강의를 다 듣고 있습니다. 좋은 강의 감사합니다.

첫번째 질문:   딥러닝 컴퓨터 비전 완벽가이드 초기판부터 개정판까지 수강하고 있고 동시에 CNN 완벽가이드, 파이썬 머신러닝 등 수강을 하면서 저는 늘 궁금했습니다.

제가 pyqt5를 UI디자인하고 Yolov5 모델을 트레이닝하면서 실시간 영상의 결과를 DB로 받아서 알람을 주는  스마트 CCVT 시스템을 한번 구성하고 싶어서 github에서 다른 개발자가 만든  소스도 참고하고 있습니다. 혹시 교수님께서 Github에서 잘 만들어 졌다고 fork 하시거나 추천해주실 만한 실시간 영상 오브젝트 디텍션 오픈소스가 있으신지요?


두번째: 오라클 성능 분석강의도 듣고 있는데 혹시 No SQL 쪽 강의 계속은 없으신지? 위에 부분에서 오브젝트 디텍션으로 받은 결과값을 DB로 저장하여 데이터를 시각화 하는 부분을 시스템으로 확장하고 싶어서 여쭤봅니다. 

 

새로나온 강의도 수강신청 할겸 해서 여줘봅니다. 교수님 지식을 나누어 주셔서 감사합니다. 

답변 1

1

권 철민님의 프로필 이미지
권 철민
지식공유자

안녕하십니까, 

오, 제 강의를 다 구매해 주시다니요.. 감격입니다. 

1. 음, 이부분은 다른 github가 있는지 잘 찾지 못했습니다. 하지만 굳이 다른 github까지 찾을 필요는 없을 것 같습니다.  DB로 데이터를 입력해서 알람을 발생 시키는 부분은 크게 어려운 부분이 아닌것 같습니다. (혹 어렵게 생각하시는 다른 부분이 있으신지요? 그렇다면 해당 내용을 다시 올려 주셨으면 합니다)

DB로 입력하는 부분은 실습 코드의 시각화 부분을 살짝만 변경해서 Object detection 결과 클래스와 좌표를 insert 만 해주면 될 것 같습니다. 그리고 alarm을 발생시키는 부분은 db에 입력 전에 원하시는 detection 클래스가 있으면 그대로 alarm 발생 코드를 적으면 될 것 같습니다. 만일 db에 입력후에 alarm을 발생 시키기를 원하시면, 주기적으로 db 테이블을 모니터링해서 원하는 object가 입력 될 경우 alarm 발생을 시키면 될 것 같습니다. 

2. 아쉽게도 NO-SQL과정은 아직 생각해 보지 않았습니다. RDBMS가 아니라 NOSQL에다 데이터 입력을 고려하실 정도면 상당히 많은 데이터 입력을 고려하고 계시는것 같군요. 일단은 RDBMS에 데이터를 입력하고, 나중에 확장 시키실때 NOSQL로 변경하는 방법은 어떠신지요?

아직 학생이라고 하셨는데, NOSQL 까지 생각하시다니, 수준이 높으시군요. 

감사합니다.  

sungho kang님의 프로필 이미지
sungho kang
질문자

교수님 친절한 답변 감사합니다. 1번 부분은 제가 한번 직접 구현해보고 혼자힘으로 안되는 부분이 몇가지 지금 있는데 그 부분에 대해서 정리해서 질문하겠습니다. 

 

다만 실시간으로  CCTV 입력 영상을 YOLOV5 로 커스텀 데이터셋으로 만든 부분을 인퍼런스 하는 부분에서 현재 입력이 들어오면 FPS부분분이 1초당 약 10프레임정도 디텍션을 하는것 같습니다. 슬로모션처럼 영상이 들어와서 이부분을 YOLOV5에서 제공해주는 detect.py 코드 중 인퍼런스 부분을 수정할려고 하는데 어디를 수정해야하는지 스텍오브플로우도 좀 찾아보고 했는데 잘모르겠습니다. 

정리하자면 실시간으로 들어오는 영상정보가 인퍼런스를 하는데 슬로모션으로 재생이 됩니다. 
실제 교수님 강의를 듣고 FPS  30 기준의 실시간 영상 디텍트가 어렵다는건 알고 있는데 ... 아직 방법을 못찾았습니다. 

 

두번째로 저는 데이터 중심 애플리케이션 설계 즉 백엔드쪽이랑 풀스텍을 생각하면서 공부하고 있습니다. 

Redis 처럼 Key Value DB를 공부하고 있는데 실시간 CCVT 영상에서 쏟아지는 데이터를 시각화 하고 분석해주는 인공지능 학습을 위해서는 RDMS는 한계가 있다고 생각되어서 실시간데이터 처리하기 위해 In - Memory DB 대한 공부가 필요하겠다고 생각하는 찰나 교수님이 데이터베이스쪽도 강의를 하셔서 저와 같은 생각을 가지고 강의를 진행하시는지 싶어서 질문했습니다.  아직 차근차근 가르쳐 주는 강의는 없어서 물론 몽고 디비에 대한 강의는 있지만 제가 원했던 데이터 중심에 대한 강의는 아니였습니다. 

아무쪼록 다음에 교수님이 이런 강의도 꼭 개설해 주셨으면 합니다. 이번에 새로 출시한 강의도 잘 수강하도록 하겠습니다. 감사합니다. 

권 철민님의 프로필 이미지
권 철민
지식공유자

1. 음, 웬만한 이미지 크기라면 yolo v5로 초당 25fps 가 가능합니다. 25fps면 동영상이 정상적이므로 재생되는 속도입니다. 이미지 크기를 한번 확인해 보시고, fps가 안나오면 이미지 크기를 줄여 보시기 바랍니다. 

 

2. 오, 기본 지식이 대단하시군요. Redis 같은 key value DB를 공부하는 것이 스펙에도 큰 도움이 될 것 같습니다. 다만 NoSQL계열은 배우기에 좀 까다로운 부분이 있습니다. NoSQL전에 RDBMS를 배우는게 정석입니다(아마도 제가 이런 말씀 드리기전에 스스로 잘 알고 계실것 같습니다만). 

나중에 기회가 되면 NoSQL도 강의 오픈을 고민해 보겠습니다. 

감사합니다.  

sungho kang님의 프로필 이미지
sungho kang

작성한 질문수

질문하기