분류 전체보기
-
CameraX api 4편 : Anlysis와 text 분석 라이브러리(OCR)회사 생활/여권 NFC (CameraX + OCR + NFC) 2023. 11. 14. 11:01
안드로이드에서 카메라 api와 함께 제공되는 재미있는 것들이 많았다. 예를 들면 OCR 기능이 그중 하나였다. OCR이란? 더보기 광학 문자 인식(OCR)은 텍스트 이미지를 기계가 읽을 수 있는 텍스트 포맷으로 변환하는 과정입니다. 예를 들어 양식 또는 영수증을 스캔하는 경우 컴퓨터는 스캔본을 이미지 파일로 저장합니다. 이미지 파일에서는 텍스트 편집기를 사용하여 단어를 편집, 검색하거나 단어 수를 계산할 수 없습니다. 그러나 OCR을 사용하면 이미지를 텍스트 문서로 변환하여 내용을 텍스트 데이터로 저장할 수 있습니다. 이미지안에 있는 텍스트를 안드로이드의 String 형식으로 가져오게 만든느 것이라고 이해하면 쉬울듯 싶다. 안드로이드 CameraX에서 이미지를 사용할 수 있는 부분은 2부분이 있다. a)..
-
11. Container With Most Water코틀린 공부/코틀린 완벽 가이드 2023. 11. 14. 10:50
You are given an integer array height of length n. There are n vertical lines drawn such that the two endpoints of the ith line are (i, 0) and (i, height[i]). Find two lines that together with the x-axis form a container, such that the container contains the most water. Return the maximum amount of water a container can store. Notice that you may not slant the container. Example 1: Input: height..
-
CameraX api 3편 : takePicture 메소드회사 생활/여권 NFC (CameraX + OCR + NFC) 2023. 11. 13. 14:30
1편에서는 CameraX api의 전반적인 설명과 2편에서는 codelab에서 학습할 수 있는 기본 코드를 살짝 학습해봤다. 이번 CameraX 3편에서는 takePhoto만 imageCapture 객체의 takePicture메소드만 다시 다뤄 보려고 한다. 2편 코드에서는 takePhoto메소드를 이용해 사진을 찍으면 자동적으로 저장이 되었다. 하지만 이미지를 찍으면 저장이 되는걸 원하지 않을 경우도 있을 것이다. 그렇다면 어떻게 해야 이미지를 바로 저장안하고 이미지 파일만 가져올 수 있을까? >>> 방법은 다른 takePicture메소드를 사용하는 것이다. takePicture 메소드를 눌러서 타고 들어가면 2개의 메소드가 나온다. 3개의 parameters를 갖는 takePicture 2개의 par..
-
167. Two Sum II - Input Array Is Sorted코틀린 공부/코틀린 완벽 가이드 2023. 11. 13. 10:47
문제 : Given a 1-indexed array of integers numbers that is already sorted in non-decreasing order, find two numbers such that they add up to a specific target number. Let these two numbers be numbers[index1] and numbers[index2] where 1
-
CameraX api 2 : CameraX 기본 코드 분석회사 생활/여권 NFC (CameraX + OCR + NFC) 2023. 11. 10. 18:19
모든 코드 보기 : 더보기 CameraX api를 최신 버전 (1.4.0-alpha02) 으로 추가했다. 설명은 코드내에 간단히 적혀있다. 공식 문서에 들어가면 버전별로 여러가지 업데이트 사항이 적혀있다. (버전 확인 : 링크) val cameraxVersion = "1.4.0-alpha02" MainActivity에서 간단히 필요한 부분만 살펴보자 !!! 1. startCamera 메소드에서 카메라 활용에 필요한 세팅을 하고 있다. a) 먼저 ProcessCameraProvider 는 카메라의 생명 주기를 생명 주기 소유자(Activity)와 바인딩하는 데 사용한다. CameraX가 생명 주기를 인식하므로 카메라를 열고 닫는 작업이 필요하지 않게 된다. b) startCamera 메소드에서 Previe..
-
CameraX api 1 : 기초회사 생활/여권 NFC (CameraX + OCR + NFC) 2023. 11. 5. 15:37
안드로이드 학습 시리즈 : 더보기 CameraX api 1 : 기초 CameraX api 2 : CameraX 기본 코드 분석 CameraX api 3편 : takePicture 메소드 CameraX api 4편 : Anlysis와 text 분석 라이브러리(OCR) CameraX api 4-2편 : Analysis + OCR + TextGraphic CameraX api 5-1편 : OCR + 여권(MRZ + NFC) CameraX api 5-2편 : OCR + 여권(MRZ + NFC) CameraX api 번외편 : guideline에 따라 이미지 자르기 차례: 1. 안드로이드 앱에서 카메라 사용 방법 2. CameraX api를 선택해서 학습하는 이유 3. CameraX 기본 내용 1. 안드로이드 앱..
-
Chapter 19 안드로이드 앱과 액티비티 생명주기책 내용 정리/안드로이드 스튜디오 Arctic Fox & 프로그래밍 2023. 8. 18. 09:45
날이 갈수록 모바일 장치의 메모리나 컴퓨팅 능력이 향상되고 있다. 그러나 Desktop 시스템에 비해서는 여전히 제한 되어 있어서 효율적으로 관리해야 한다 (특히 메모리!). 운영체제와 앱 모드에서 그렇다. 관리를 하면서도 항상 사용자에게 응답할 수 있어야 한다. 그래서 안드로이드는 앱이 실행되는 프로세스와 앱을 구성하는 모든 컴포넌트의 생명주기와 상태를 전적으로 통제한다. 안드로이드 개발자는 앱과 액티비티의 생명주기 관리 모델을 이해하고 상태 변경에 대처할수 있는 능력을 기르는 것이 중요하다. 19.1 안드로이드 앱과 리소스 관리 안드로이드 앱은 안드로이드 운영체제하에서 별개의 프로세스로 실행된다. 그리고 장치의 자원이 한계에 다다를 경우 시스템에서는 메모리 확보를 위해 프로세서를 중단하는 조치를 취한..
-
Chapter 9 : 안드로이드 아키텍처 개요책 내용 정리/안드로이드 스튜디오 Arctic Fox & 프로그래밍 2023. 8. 14. 18:26
차례 : 9.1 안드로이드 소프트웨어 스택 9.2 리눅스 커널 9.3 안드로이드 런타임 - ART 9.4 안드로이드 라이브러리 9.4.1 C/C++ 라이브러리 9.5 앱 프레임워크 9.6 앱 9.7 요약 9.1 안드로이드 소프트웨어 스택 안드로이드 시스템은 소프트웨어 스택(stack)의 형태로 구성된다. 앱, 운영체제, 런타임 환경, 미들웨어, 각종 서비스와 라이브러리 등이 겹겹이 쌓여 구성된 것이라고 볼 수 있다. 9.2 리눅스 커널 리눅스 커널은 안드로이드 소프트웨어 스택의 맨 밑에 위치하며, 장치 하드웨어의 기반 운영체제 역할을 담당한다. 안드로이드는 리눅스 커널만을 사용한다. 원래 리눅스는 Desktop이나 서버의 컴퓨터에서 사용하기 위해 개발되었다. 그러나 리눅스 커널의 효율성과 성능이 좋으므로..
-
zxing 라이브러리 2편 (QR 만들기)회사 생활/QR 코드 인식 2023. 8. 14. 14:19
1편 : zxing 라이브러리 1편 (QR 스캔) 2편 : zxing 라이브러리 2편 (QR 만들기) 1편에서는 업무로 받은 QR 스캔 부분을 만들었다. QR을 직접 만드는 일은 업무랑은 관련 없지만 그냥 해봤다. 기존 dependency 세팅은 똑같 1편인 QR스캔 하는 부분하고 똑같다. 1. dependency 세팅 build.gradle(app) // zxing implementation 'com.journeyapps:zxing-android-embedded:4.3.0' AndroidManifest.xml 2. 코드들 MarkArActivity.java public class MakeQrActivity extends AppCompatActivity { private ActivityMakeQrBind..