• SORT 알고리즘을 이용한 오브젝트 추적

    객체 추적(Object Tracking)이란 영상의 각 프레임에서 인식된 객체들 중 동일한 객체가 서로 연관되어 있음을 판단하여 각 객체의 궤적(Trajectory)를 얻어내는 방법이다. 객체 인식(Object Detection)을 통해서는 하나의 프레임에서의 공간상의 정보만을 얻을 수 있지만 객체 추적을 통해서는 연속된 여러 프레임에서 나타나는 시간 흐름에 따라 변하는 정보까지도 얻을 수 있으므로 훨씬 더 다양한 응용을 가능하게 해준다.
  • Swift iOS 프로젝트에 OpenCV 사용

    OpenCV는 실시간 비전 프로세싱을 위한 라이브러리로 C++로 작성되었다. OpenCV는 잘 알려진 거의 모든 비전 알고리즘이 포함되어 있기 때문에 각 알고리즘을 일일히 구현할 필요가 없는데다 성능도 뛰어나기 때문에 비전 관련 프로그램을 만드는데 있어 필수적이라고 할 수 있다.
  • SceneDelegate 이해하기

    Xcode 11.0 부터 iOS 프로젝트를 생성하는 경우 변경점이 하나 생겼다. Xcode에서 자동으로 생성해주는 파일에 SceneDelegate.swift라는 파일이 추가된 것이다. Scene이라는 단어가 포함되어 있기 때문에 화면에 보여지는 무언가와 관련된 것임은 짐작할 수 있는데 과연 SceneDelegate는 무엇인지, 어떻게 사용해야 하는지 알아보았다.
  • Swift 및 iOS Framework 기반 Face Alignment 구현

    Face Alignment는 얼굴 관련 알고리즘 및 머신러닝에서 필요로 하는 전처리 방법으로 원본 이미지에 포함된 얼굴의 각도, 크기, 비율 등에 관계 없이 표준화된 크기 및 눈, 코, 입 위치를 갖는 얼굴 이미지가 되도록 이미지를 Affine Transfrom 및 Crop 하는 것을 말한다.
  • SwiftUI를 통해 보는 프로그래밍 패러다임

    이번 WWDC19에서 iOS의 UIKit과 MacOS의 AppKit을 대체할 새로운 UI 개발 프레임워크인 SwiftUI가 등장하였다. 애플은 7개나 되는 세션을 SwiftUI와 관련된 내용으로 채운 만큼 이번 WWDC19에서 가장 주요한 내용 중 하나로 포지셔닝하였다.
  • 단방향 데이터 흐름의 ViewModel

    최근 iOS 프레임워크에서의 MVVM 아키텍처 구현은 RxSwift를 이용한 데이터 바인딩이 표준으로 자리잡는 추세로 보인다. RxSwift는 MVVM과 좋은 궁합으로 시너지를 창출하였지만 좋지 못한 ViewModel 패턴을 양산하고 있는데 대표적으로 Subject의 남용이다.
  • OpenCV 테니스 코트 인식 2 (카메라 캘리브레이션)

    첫번째 포스팅에서는 간단한 영상처리와 직선 검출을 통해 테니스 코트 위 4개의 기준 포인트를 구하였다. 이 기준 포인트를 이용하여 카메라 캘리브레이션(Camera Calibration)을 수행하는 코드를 작성할 것이다.
  • OpenCV 테니스 코트 인식 1 (라인 검출)

    Python 환경에서 OpenCV를 이용해 이미지에서 테니스 코트 라인 추출을 하는 과정을 정리하고자 한다.
  • iOS의 코드 기반 Autolayout

    iOS 개발에 입문할 때 보통 Xcode의 Interface Builder 상에서 Autolayout을 이용한 UI 요소의 배치 방법을 배우게 될 것이다. 간단한 프로젝트에서는 이 방법으로 특별히 문제가 없겠지만 규모가 크고 여러 개발자가 협업하는 프로젝트에서는 어떤 방식으로 UI를 구현할 것인지는 중요한 의사결정 사항 중 하나이다.
  • 1