• 프로젝트 관리를 어떻게 하였는지?

    git project를 구성하여 각각 서버, 클라이언트, 하드웨어 부분의 레포지토리를 나누고 각자 담당한 파트의 레포지토리를 fork하여 코드를 작성한 후 full request&merge하는 방식으로 형상 관리를 하였음

  • Onvif 카메라란?

    Onvif는 IP 카메라에서 사용하는 통신 규격으로 보안장비끼리 연결되어 동작하게 해주는 프로토콜입니다.

    프로젝트에 사용한 한화비전의 AI 카메라의 경우에는 RTSP 프로토콜을 사용하여 영상을 송수신하고 이벤트에 관련된 metadata를 송수신할 수 있습니다

  • metadata를 어떻게 수신하였는지?

    RTSP 프로토콜로 송신되는 metadata를 ffmpeg로 RTSP url에 접속해서 꺼내 파이프로 읽어내는 방식으로 수신하였습니다

  • metadata를 어떻게 관리하였는지?

    xml 형식으로 전달되는 metadata의 정규식 패턴을 파악하여 원하는 이벤트를 감지하고 이벤트를 발생시키는 객체에 대한 정보를 추출 할 수 있도록 하였습니다

    • 위험상황 알고리즘을 어떻게 작성하였는지?

      사람의 라인 크로싱 이벤트를 감지하고 주변 차량의 이동 방향을 분석해서 위험하다고 판단되면 적절한 LED Matrix를 동작하도록 하고 그 순간 화면을 캡쳐해 DB에 저장하도록 하였습니다

      순간적으로 차량이 감지가 풀릴 상황을 방지하여 차량이 보이지 않게 되어도 차량의 이동 이력을 바로 삭제하지 않고 최근 캐시 프레임 안에 존재하는지 확인하도록 하여 오류를 최소화 하였습니다

  • 서버 클라이언트 통신은 어떻게 하였는지?

    서버와 클라이언트 통신은 TCP로 구성하였으며 보안 취약을 고려하여 OpneSSL을 활용하였습니다

    서버측에서 인증서를 발급하고 클라이언트에는 인증서를 검증 할 수 있는 CA 인증서를 배포하여 TCP 통신이 가능하도록 하였습니다