WinUI 3로 만든 초간단 OCR 프로그램

어느 날 저는 C#에서 사용할 수 있는 OCR 라이브러리를 찾던 중 이런 글을 발견했습니다.

그렇습니다. 윈도우 10부터 OCR API가 내장되어 있다는 것인데 이 글에서는 원래 UWP용 API지만 winmd를 가져와서 일반적인 데스크톱 앱에서 사용하고 있습니다.

일단 저 UWP OCR API는 같은 윈도우 런타임 기반인 WinUI 3에서도 작동할 것으로 생각했습니다. 그래도 한번 찾아보았습니다. 이런 글이 보이더군요.

그렇습니다. Windows App SDK 자체적으로 OCR API를 제공한다는 것입니다. 하지만 저 API는 NPU가 들어간 Copilot+ PC 전용이라서 일반 PC에서는 작동하지 않습니다. 고로 우리는 저 Windows.Media.Ocr을 사용할 수밖에 없습니다.

그래서 한번 테스트 목적으로 이 Windows.Media.Ocr을 사용해보기로 했습니다.

소스 코드는 아래 링크에 있습니다. 그런데 볼 거 없습니다. 정말로요.

한번 시험해볼까요?


이 사진은 2022년도에 찍은 사진입니다.

먼저 이 사진을 한번 인식시켜 봅시다.

???

아하! 눕혀져 있어서 그렇구나!

그렇다면 다른 사진으로 테스트해 봅시다.

… 보정을 안해서 그런건지 아니면 원래 품질이 이런건지 모르겠습니다.

6개의 좋아요

아, 제가 언급했던 글이 @rkttu 님의 글이었군요.

3개의 좋아요

정말 마이크로소프트가 이해가 안가는점 하나.
UWP용 API를 이런식으로 사용할 수 있게 만들거면 그냥
.Net용으로 만들어 주는것이 맞는것이 아닐지? 싶네요.

이게 찾아보면 멀티미디어 관련된것들 상당수?(거의 대부분) 이런 상황이거든요.
네이티브에 해당하는 GDI나 DirectShow, Direct2D,… 것들은 아예 버려진 수준이고 말이죠. (Direct3D는 약간 논 외)

2개의 좋아요