Gradle 스크립트 언어를 Groovy DSL에서 Kotlin DSL로 변경 하기

Migrating Groovy DSL to Kotlin DSL Kotlin DSL 이란? DSL이란 Domain Specific Language의 약어로 특정 분야에 최적화된 프로그래밍 언어를 뜻한다. 상용구 코드를 최소화 하기 위해 명령형 코드 대신 선언적 코드 형식을 따른다. Kotlin DSL은 코틀린의 언어적인 특징으로 가독성이 좋고 간략한 코드를 사용하여 Gradle 스크립팅을 하는 것을 목적으로 하는 DSL이다. 빌드 더보기…

글쓴이 Charlezz,

안드로이드 개발자의 영어 단어 공부 – 9주차 —

Vocabulary pore: 모공 pimples: 여드름, acnes(잡티) physical condition severe, serious: 심각한 on the day: 당일에 rotator muscle: 회전근 regular discount: 상시 할인 employee discount: 직원 할인 in bulk: 대량으로 cheekbones: 광대뼈 occupational disease: 직업병 cervical spine: 경추 dedicated husband, loving husband: 애처가  parking space: 주차자리 in a split second: 순식간에 더보기…

글쓴이 Charlezz,

[안드로이드로 배우는 OpenCV] Perspective 변환 (스캐너 앱 만들기)

Perspective transformation Perspective 변환(투시 변환)은 이미지 또는 이미지 내의 객체를 나란히 직선으로 만들 때 매우 유용한 변환이다. Perspective 변환을 적용하는 아주 좋은 예시는 테이블 위의 문서를 가지런하게 만드는 것이다. Perspective 변환을 시작하기 앞서 간단히 어떠한 방식으로 이러한 작업을 할 수 있는지 알아보자.  우선 원본 이미지 상에서 사변형의 좌표와 최종적으로 변형된 더보기…

글쓴이 Charlezz,

[안드로이드로 배우는 OpenCV] 이미지 피라미드

이미지 피라미드 영상처리를 하다보면, 어떤 이미지를 확대 또는 축소 할 일이 빈번히 생긴다. 이를 위해 OpenCV에서는 pyrUp() 그리고 pyrDown() 함수를 제공한다. (비록 OpenCV 내부에서는 resize 함수를 그냥 이용하는 것 뿐이지만…) pyrDown(Mat src, Mat dst, Size dstsize, int borderType) pyrUp(Mat src, Mat dst, Size dstsize, int borderType) src : 입력 영상 더보기…

글쓴이 Charlezz,

[안드로이드로 배우는 OpenCV] Affine 변환

Affine 변환이란? Affine 변환은 선형 변환 중 하나로 점, 직선, 평면을 보존하며, 변환후에도 평행성이 보존되는 특징을 가지고 있다. Affine 변환을 통해 표현할 수 있는 변환은 다음과 같다. 회전 이동 확대 / 축소 반전 전단(Shearing) Affine 변환은 일반적으로 2*3행렬을 사용하며 두 이미지의 관계를 표현한다. 그 내용은 다음과 같다. 자세한 내용은 이전에 더보기…

Dagger2를 알아보자 – Dynamic Feature Module에 적용하기

Dagger2를 알아보자 – 기본편 Dagger2를 알아보자 – Scope  Dagger2를 알아보자 – Injection의 종류  Dagger2를 알아보자 – Qualifier  Dagger2를 알아보자 – Binding  Dagger2를 알아보자 – Multibinding  Dagger2를 알아보자 – SubComponent  Dagger2를 알아보자 – Android Dagger2를 알아보자 – Testing(준비중) Dagger2를 알아보자 – Dynamic Feature에 적용하기(You’re here) Dynamic Feature Module에 Dagger 적용하기 위의 더보기…

글쓴이 Charlezz,

[안드로이드로 배우는 OpenCV] 카툰 필터 및 스케치 필터

카툰 필터 및 스케치 필터  카메라로 부터 입력받은 영상을 실시간으로 필터 처리하여 재미있는 기능을 구현해보자. 카툰 필터  카툰필터는 원본 영상을 블러로 뭉게고, 한편으로는 원본영상의 외곽선을 검출한다. 선처리 된 두 영상을 합치면 만화같은 느낌의 영상을 얻을 수 있다. 이를 카툰필터라고 한다.   카툰필터를 적용할 때 원본영상의 사이즈를 줄여서 영상처리를 퍼포먼스를 가속화 더보기…

[안드로이드로 배우는 OpenCV] 언샤프 마스크 필터

언샤프 마스크 필터 언샤프 마스크 필터는 영상을 선명하게 만드는 방법 중 하나다. 하지만 이름만 보면 선명하지 않게 만드는 느낌이 든다. 언샤프라는 명칭이 붙은 이유는 영상을 선명하게 만들 때 블러효과가 적용된 부드러운 영상을 사용하기 때문이다.  위의 그래프들을 살펴보자. 첫번째 그래프는 일반적인 영상에서 특정 픽셀에 따른 값의 분포를 보여주고 있다. 원본 영상에 더보기…

글쓴이 Charlezz,

[안드로이드로 배우는 OpenCV] 블러링(4) – 양방향 필터

양방향 필터 (Bilateral Filter) 평균값 필터 또는 가우시안 필터는 이미지의 엣지(윤곽선) 부근에서도 픽셀 값을 평탄하게 만드는 단점이 있다. 양방향 필터는 대상 픽셀과 주변 픽셀과의 거리 그리고 픽셀 값의 차이를 함께 고려하여, 엣지를 보전하는 블러 기법 중 하나다. 가우시안 필터보다 처리 시간이 더 오래 걸리지만, 더 나은 품질의 이미지를 만들어 낼 더보기…

글쓴이 Charlezz,