-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Feat] AI기반 필기인식 기능 #27
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
s3에서 모델 다운로드 및 필기 제거 API
requirements.txt 및 import 추가 도커 작업 디렉토리 하위폴더 models 생성
requirements.txt 및 import 추가 도커 작업 디렉토리 하위폴더 models 생성
프롬프팅 및 루트 인사말
git Command가 없기 때문에 깃 액션에서 에러가 발생했음
update 후 -y로 git 설치해야 함.
수정: uuid는 자를 수 없음 이동: 디렉토리 생성 명령어는 도커파일 CMD에서 수정: 모델 없을 경우에만 다운로드 추가: 모델로드 기본 1회 실행
바운딩 박스 내 입력은 제외하기
모델 경로 변경
로직 에러
세그멘팅 방식을 사각형 바운더리박스화
중간 마스킹 과정 이미지 업로드
semnisem
added
enhancement
New feature or request
and removed
bug
Something isn't working
labels
Nov 20, 2024
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
PR 타입
반영 브랜치
dev ➡️ main
작업 사항
📝
AI 필기제거 API 개발
기존엔 POST요청과 process-color 엔드포인트였으며 색상기반으로 필기를 인식. 이는 그대로 두었으며 AI기반 필기인식 API인 process-shape 엔드포인트로 POST 요청 가능.
이미지 URL을 받아 다운로드, 전처리 및 필기제거 및 후처리 후, 입력, 중간, 중간1, 중간2, 결과 이미지를 모두 s3에 업로드.
📝
AI 필기제거 로직 개발 및 경량화
AI 필기제거에 파인튜닝한 객체탐지모델(YOLOv11)과 파운데이션 세그멘테이션 모델(SAM-vit-h)을 활용했으나, 세그멘테이션 모델의 용량 및 연산 처리 속도가 1분이상이라 비현실적임을 감안하여, 모바일용도의 가벼운 경량화 모델로 변경하여 연산 처리 시간을 50% 이상 �감축하는 데 성공.
📝
도커파일 & 패키지 버전 파일 수정
모델을 서버 도커 컨테이너 내 보관 및 디렉토리 생성이 필요해짐에 따라 도커파일의 RUN 명령어를 수정.
SAM을 위한 git 설치도 이루어지기 위해, 그리고 추가적으로 필요한 ML 패키지 설치를 위해 requirements.txt를 추가
📝
기타 버그 수정
요청에 필드가 오지 않는 경우, 마스킹 중간 결과가 없는 경우 등을 고려하여 예외처리를 진행.
또한 동그란 마킹을 인식할 경우 후보정에서 모폴로지 변환을 통해서 원 내부를 제외.
테스트 방법
추가된 기능은 아래 방식으로 자유롭게 요청&응답 테스트가 가능합니다.
process-shape에 POST요청을 보내면 되며 형식은 아래와 같습니다.
{
"fullUrl": 이미지 URL,
"points": [200,800,1400,2000],
"labels": []
}
테스트 결과