전체 글 322

[CV] Image Segmentation (이미지 분할)

Image Segmentation은 이미지를 단순화하거나 분석하기 쉬게 하기 위해 이미지를 여러 세그먼트 또는 영역으로 나누는 컴퓨터 비전의 중요한 작업이다. 각 세그먼트는 색상, 질감, 강도 또는 기타 속성 등 유사한 특성을 공유하는 픽셀 그룹을 나타낸다. 세그멘테이션은 배경에서 관심 있는 물체나 영역을 분리하거나 이미지 내에서 서로 다른 물체를 분리하는 데 도움이 된다. Image Segmentation은 많은 컴퓨터 비번 응용에서 기본적인 역할을 하며, 기계가 시각 정보를 보다 효과적으로 이해하고 처리할 수 있도록 도와준다.  Image Segmentation의 유형:Semantic Segmenatation (의미적 분할)Semantic Segmentation 에서는 이미지의 각 픽셀이 특정 클래스..

[Computer Network] REST (Representational State Transfer) - 2

Python과 Flask 프레임워크를 사용한 REST API 구현의 간단한 예시다. 이 API는 기본적인 CRUD (Create, Read, Update, Delete) 작업을 통해 책 목록을 관리한다. Flask를 사용한 REST API의 기본 구현으로, REST 원칙이 실제로 어떻게 적용되는지 보여준다. 각 엔드포인트는 REST 원칙을 따르며, 클라이언트는 GET, POST, PUT, DELETE와 같은 표준 HTTP 메서드를 사용해 리소스(이 경우 book)을 조작할 수 있다. Flask 설치: Flask가 설치되어 있지 않은 경우 pip를 사용해 설치할 수 있다.pip install FlaskREST API 생성GET /api/books: 모든 책 목록을 가져온다.GET /api/books/: 특..

카테고리 없음 2024.10.15

[Computer Network] REST (Representational State Transfer) - 1

REST (Representational State Transfer) 는 네트워크 애플리케이션을 설계하는 데 사용되는 아키텍처 스타일이다. 이는 표준 HTTP 메서드 (예: GET, POST, PUT, DELETE) 를 활용하여 일반적으로 URL 또는 URI로 표시되는 리소스에 대한 작업을 수행한다. REST는 상태가 저장되지 않으므로 클라이언트에서 서버로 보내는 각 요청에는 서버가 해당 요청을 처리하는 데 필요한 모든 정보가 포함되어야 하며 서버는 요청 사이에 세션 데이터를 보유하지 않는다. RESTful은 REST의 원칙을 준수하는 애플리케이션 또는 API를 말한다. RESTful 시스템에서 리소스(데이터 객체)는 일반적으로 표준 HTTP 메서드를 통해 일관되고 상태 비저장 인터페이스 (statele..

[CV] Multimodal (멀티모달)

AI 분야에서 Multimodal이란 텍스트, 이미지, 오디오, 비디오 또는 센서 데이터와 같은 여러 유형의 데이터 또는 'modes'의 정보를 처리하고 통합하는 시스템의 기능을 의미한다. Multimodal AI는 이러한 다양한 데이터 유형을 통합된 방식으로 이해하고 분석하여 여러 입력의 조합이 필요한 작업을 수행할 수 있다. Multimodal AI의 목표는 인간이 여러 감각을 사용하여 환경을 인식하고 이해하는 방식과 유사하게 세상과 상호작용할 수 있는 보다 포괄적이고 유연한 시스템을 만드는 것이다. 예시:텍스트 및 이미지: 이미지에 대한 캡션을 생성하거나 이미지에 대한 질문에 답하는 AI 시스템은 언어 이해(텍스트)와 시각적 이해(이미지)를 결합한다.텍스트 및 오디오: 음성 언어(오디오)를 이해하고..

[Android] RecyclerView (리싸이클러 뷰) - 2

텍스트 아이템 목록을 보여주는 안드로이드의 RecyclerView 구현이다. 이 예제에서 RecyclerView를 설정과 사용자 지정 어댑터를 구현하고, ViewHolder를 생성하는 방법을 보여준다. 필요에 따라 더 복잡한 레이아웃, 인터랙션 로직 또는 애니메이션을 추가할 수 있다. Dependecies 추가: 우선  RecyclerView의 dependency를 build.gradle에 추가한다.dependencies { implementation 'androidx.recyclerview:recyclerview:1.2.1'} RecyclerView의 Layout 생성: 해당 activity layout XML 파일(예: activity_main.xml)에 RecyclerView를 추가한다. ..

[Android] RecyclerView (리싸이클러 뷰) - 1

RecyclerView는 안드로이드용 ListView의 보다 고급스럽고 유연한 버전이다. 안드로이드 지원 라이브러리의 일부이며 스크롤 가능한 목록 또는 Grid 형식으로 아이템의 대용량 데이터 세트를 효율적으로 표시하도록 설계되었다. 다음은 RecyclerView의 주요 기능에 대한 분석이다. 주요 기능View Recycling (재활용 보기): RecyclerView는 더 이상 표시되지 않는 아이템 보기를 재사용(재활용) 하여 생성되는 View의 수를 줄인다. View가 화면에서 사라지면 처음부터 새 View를 만드는 대신 새 데이터에 재사용되므로 성능이 향상된다.Layout Managers (레이아웃 관리자): RecyclerView는 아이템 배치 방식에 유연성을 제공한다.세로 또는 가로 목록의 경우..

[Android] Snackbar Vs. Toast

안드로이드에서 Snackbar와 Toast는 모두 사용자에게 간단한 메시지를 표시하는 데 사용되는 UI 구성 요소지만, 모양 및 동작이 다르다. Snackbar는 더 다양하고 대화형인 반면 Toast는 더 단순하며 주로 짧은 비대화형 메시지를 표시하는 데 사용된다. 상호 작용 Snackbar : 사용자와 상호 작용을 허용한다. '실행취소(UNDO)' 또는 '재시도(RETRY)'와 같은 Action Button (작업 버튼)을 추가하여 사용자가 메시지에 따라 특정 작업을 수행할 수 있도록 할 수 있다.Toast:  비대화형 메시지다. Toast는 단순히 메시지를 표시하고 사용자 상호작용 없이 사라진다.사용 컨텍스트Snackbar: 현재 보기와 관련된 메시지(예: 양식 제출 또는 업데이트)를 표시하는 데 사..

[CV] Image Pyramid (이미지 피라미드)

컴퓨터 비전에서 Image Pyramid는 이미지를 반복적으로 다운샘플링 (일반적으로 2의 배수)하여 해상도가 점차 낮아지는 이미지 시퀀스를 생성하는 이미지의 다중 스케일 표현이다. 이 구조는 알고리즘이 다양한 수준의 디테일로 이미지를 처리할 수 있게 해주므로 object detection, image matching, texture analysis 같은 다양한 작업에 유용하다.  Pyramid에는 크게 두 가지 유형이 있다.Gaussian Pyramid:Pyramid의 각 레벨은 Gaussian Filter를 사용해 noise와 detail을 줄이기 위해 이전 레벨을 매끄럽게 하고(smoothed) 다운샘플링한 버전이다.주로 다양한 스케일로 글로벌 이미지의 특징을 캡처하는 것이 목표인 응용에 사용된다...

[CV] NCC (Normalized Cross-Correlation)

컴퓨터 비전에서 NCC는 두 이미지(또는 이미지 패치) 간의 유사성을 측정하는 Normalized Cross-Correlation (정규화된 교차 상관관계)의 약자다. 템플릿 매칭 (template matching) 및 이미지 정렬 (image alignment)  작업에서 일반적으로 사용되며, 템플릿과 이미지 섹션 간에 가장 잘 일치하는 것을 찾는 것이 목표다. NCC에 관련된 단계는 아래와 같다.Normalization: 비교 대상인 템플릿과 이미지 패치는 모두 평균을 빼고 표준편차로 나누어 정규화된다. 이렇게 하면 발기와 대비가 다른 효과가 제거된다.Cross-correlation: 템플릿과 이미지 패치의 정규화된 버전을 곱하고 합산해 상관 관계 점수를 계산한다. 그 결과는 유사성의 척도로서 점수가..

[Android] Empty Activity Vs. Empty Views Activity

Android Studio에서 새로운 Activity를 생성할 때 Empty Activity와 Empty View Activity를 확인할 수 있다. 두 Activity의 차이점을 알아보자. Empty Views Activity: Empty Views Activity는 Android 앱에서 Java를 이용한 template이다. Android Developers 사이트에도 현재 Empty Views Acitivty에 대한 문서 페이지는 없다.(Empty Activity에 대한 페이지 역시 제공하지 않고있다.) 이는 Android 앱 개발이 Java로만 이뤄지던 시절에 존재했던 기본 Activity로 old version이라고 할 수 있지만, 현재 Java로 개발을 할 때는 Empty Views Activ..