"1분반-aPPLY"의 두 판 사이의 차이

cdc wiki
이동: 둘러보기, 검색
(경제적, 사회적 기대 및 파급효과)
(개발 일정)
205번째 줄: 205번째 줄:
 
===기술개발 일정 및 추진체계===
 
===기술개발 일정 및 추진체계===
 
====개발 일정====
 
====개발 일정====
내용
+
{| class="wikitable" style="text-align: center;"
 +
|-
 +
! rowspan="2" | 단계별 세부개발 내용
 +
! rowspan="2" | 담당자
 +
! colspan="4" | 개발기간 (월단위)
 +
! rowspan="2" | 비고
 +
|-
 +
! 3 !! 4 !! 5 !! 6
 +
|-
 +
| 아이디어 구상 및 요구사항 분석
 +
| 전원
 +
| ● || || ||
 +
|
 +
|-
 +
| 개발 환경 및 컨벤션 설정
 +
| 전원
 +
| ● || || ||
 +
|
 +
|-
 +
| 서버 인프라 및 CI/CD 구축
 +
| 이승목, 양나슬
 +
| ● || ● || ||
 +
| 서버 인프라: aws ec2, aws s3, aws route 53<br>CI/CD: git action
 +
|-
 +
| UI/UX 설계
 +
| 박수빈
 +
| ● || ● || ||
 +
|
 +
|-
 +
| 데이터베이스 설계
 +
| 이승목
 +
| ● || ● || ||
 +
|
 +
|-
 +
| API 설계
 +
| 이승목, 박동찬
 +
| || ● || ● ||
 +
|
 +
|-
 +
| 프론트엔드 개발
 +
| 박동찬, 박수빈
 +
| || ● || ● ||
 +
|
 +
|-
 +
| 백엔드 개발
 +
| 이승목
 +
| || ● || ● ||
 +
|
 +
|-
 +
| AI서버 개발
 +
| 양나슬
 +
| || ● || ● ||
 +
|
 +
|-
 +
| 이미지 선별 AI 모델 생성
 +
| 박동찬, 양나슬
 +
| || || ● || ●
 +
|-
 +
| 일기 생성 AI 모델 생성
 +
| 박동찬, 양나슬
 +
| || || ● || ●
 +
|-
 +
| 통합테스트
 +
| 전원
 +
| || || ● || ●
 +
|-
 +
| 배포
 +
| 전원
 +
| || || || ●
 +
|-
 +
| 유지보수
 +
| 전원
 +
| || || || ●
 +
|}
 +
 
 
====구성원 및 추진체계====
 
====구성원 및 추진체계====
 
내용
 
내용

2025년 6월 14일 (토) 11:42 판

프로젝트 개요

기술개발 과제

국문 : 다이어리픽 - 사진기반 일기 자동 생성 앱

영문 : DiaryPic - Photo-based Automatic Diary Creation App

과제 팀명

aPPLY

지도교수

박관용 교수님

개발기간

2025년 3월 ~ 2025년 6월 (총 4개월)

구성원 소개

서울시립대학교 컴퓨터과학부 20229200** 박*빈

서울시립대학교 컴퓨터과학부 20229200** 박*찬

서울시립대학교 컴퓨터과학부 20229200** 양*슬

서울시립대학교 컴퓨터과학부 20229200** 이*목

서론

개발 과제의 개요

개발 과제 요약

본 프로젝트는 사용자가 일상 속에서 촬영한 사진을 기반으로 손쉽게 일기를 작성하고 관리할 수 있는 AI 사진 일기 앱을 개발하는 것이다. 사용자는 사진을 업로드하면 AI가 자동으로 일기 초안을 생성해주며, 이를 수정 또는 확정하여 저장할 수 있다. 캘린더 및 앨범 기능을 통해 기록을 시각적으로 관리할 수 있고, 감정 이모티콘, 위치 기반 분류, AI 베스트샷 추천 등 다양한 기능이 제공되어 감성적이고 효율적인 일기 쓰기 경험을 제공한다.

개발 과제의 배경 및 효과

현대 사회에서 사람들은 바쁜 일상 속에서도 자신의 감정을 기록하고 추억을 저장하는 것에 대한 필요성을 느낀다. 그러나 기존의 다이어리 애플리케이션은 대부분 수동 입력 방식으로 제공되며, 사용자가 꾸준히 기록하는 것이 쉽지 않다.

이에 따라 우리는 사진을 기반으로 자동으로 일기를 작성해주는 AI 일기 앱의 필요성을 인식하였다. 우리의 앱은 사용자가 업로드한 사진 정보를 기반으로 AI가 자연어 일기 초안을 생성해주며, 캘린더 기반의 시각적 관리와 감정 태깅, 메타데이터 기반 장소별 앨범 정리 등의 기능을 통해 감성과 편의성을 모두 고려한 사용자 경험을 제공한다.

이를 통해 사용자는 일기 작성의 부담을 줄이면서도 감정 기록과 추억 보관을 쉽게 할 수 있다. AI 기반 장소별 앨범 정리를 활용하여 보다 정돈된 형태로 기록을 관리할 수 있으며, 검색 및 조회 기능을 강화함으로써 과거의 기록을 쉽게 찾아볼 수 있다.

개발 과제의 목표 및 내용

이 앱의 주요 개발 목표는 사진을 활용한 자동 일기 생성 시스템을 중심으로, 사용자의 기록 습관을 쉽게 만들어주는 통합형 일기 플랫폼을 구축하는 것이다. 아래는 구체적인 기능 구성이다.

1. 사용자 인증 및 시작화면

- SNS 연동을 통한 회원가입 및 로그인 기능을 제공한다.

2. 메인 페이지: 사진 기반 기록 시작

- 사용자가 하루 중 기록하고 싶은 사진을 한 장 또는 여러 장 업로드할 수 있다.

- 사진 메타데이터(촬영일, 장소 등)를 기반으로 자동 분류 및 활용한다.

3. 캘린더 기반 기록 관리

- 캘린더에서 날짜 선택 후 해당 날짜의 일기를 조회할 수 있다.

- 일기 유무에 따라 썸네일에 해당 일기의 대표 사진을 표시한다.

- 사진이 없는 경우에는 기본 배경화면이 썸네일로 자동 지정된다.

- 새 기록 추가 시, 사진 업로드 또는 텍스트 입력 창을 제공한다.

4. 일기 작성 및 AI 지원 기능

- 여러 장의 사진 중 최대 9장의 대표 사진을 AI가 베스트샷으로 추천한다.

- 사용자는 AI 사진 추천 전 필수 포함 사진을 수동으로 선택할 수 있다.

- Swipe를 통해 사진을 조회할 수 있다.

- 각 사진마다 사용자가 포커스 키워드(인물, 풍경, 음식, 사물, 동물, 커스텀 추가)를 선택한다.

- AI는 사진, 메타데이터, 키워드, 말투 설정을 바탕으로 일기 초안을 생성한다.

- 사용자는 초안을 수동으로 수정하고 텍스트를 입력하여 AI가 생성한 내용을 수정할 수 있다.

- 일기 작성 시 감정 이모티콘 설정 및 좋아요 태그 기능을 제공한다.

5. 말투 커스터마이징 기능

- 사용자는 사전 설정된 말투 유형(예: 기록형, 감성형, 경쾌형, 내면 대화형, 관찰형, 계획형 등) 중 선택할 수 있다.

- 필요 시 직접 수정하거나 새 말투 스타일을 추가할 수 있다.

- AI는 설정된 말투에 맞춰 일기를 생성하여 개인화된 기록 경험을 제공한다.

6. 마이 페이지: 개인 설정 및 통계

- 사용자 정보 수정 기능을 제공한다.

- 사진 기록 알림 On/Off, 시간 설정 등 알림 기능을 제공한다.

- 삭제된 일기를 임시 저장하는 휴지통 기능으로 실수를 방지한다.

6.1 앨범 페이지: 자동 정리와 검색
- 작성된 일기들을 썸네일로 한눈에 볼 수 있는 앨범 뷰를 제공한다.
- 월/년별 일기 작성 통계(작성 수)를 제공한다.
- 좋아요를 누른 일기만 모아볼 수 있는 좋아요 앨범을 제공한다.
- 장소 기반 자동 앨범 분류 기능(예: "서울특별시", "미국")을 제공한다.

관련 기술의 현황

관련 기술의 현황 및 분석(State of art)

  • State of art
기술 분야 적용 기술 비교
Multimodal LLM GPT, Gemini, Gemma, QWEN Image-Text-to-Text Multimodal 모델
LLM GPT, Gemini, LLAMA, QwQ, EXAONE Text Generation, 고급 자연어 처리
Computer Vision CLIP, NIMA, InsightFace, EAR 입력 이미지 분석 및 Clustering/Ranking
  • 특허조사 및 특허 전략 분석
◇ 유사 특허 명

● 공개
이미지 인식과 일정 데이터를 통한 자동 일기 작성 서비스
출원번호: 1020230123422 (2023-09-15)

공유 이미지의 감성분류 기반 자동 문장 완성과 그림일기 서비스 제공장치
출원번호: 1020220062520 (2022-05-23)

인공지능 서비스를 이용한 일기작성장치 및 그 장치의 구동방법
출원번호: 1020230104800 (2023-08-10)

● 등록
시각적 입력의 처리
출원번호: 1020180035734 (2018-03-28)

일기 및 일정 관리 서비스서버, 일기 및 일정 관리 서비스를 제공하는 단말기 그리고 그 제어방법
출원번호: 1020130126094(2013-10-22)

⚫ 소멸 (등록료 미납)
전자장치에서 일기 서비스를 제공하는 방법 및 장치
출원번호: 1020140017769 (2014-01-17)

⚫ 거절
일기 분석을 기반으로 사용자의 감정을 관리하는 시스템 및 방법
출원번호: 1020220019676 (2022-02-15)

◇ 특허 전략

- 유사 특허와의 차별점 분석
1. 자동 일기 작성의 기반 기술 차별화
기존 특허들은 주로 이미지 인식과 일정 관리 또는 감정 분석을 통해 일기를 작성하는 시스템을 다루고 있습니다. 예를 들어, 이미지 인식과 일정 데이터를 통한 자동 일기 작성 서비스(1020230123422) 특허는 이미지와 일정 데이터를 결합하여 자동으로 일기를 생성합니다. 반면, 우리의 프로젝트는 사진 기반으로 자동 일기 초안을 생성하며, 감성 이모티콘과 위치 기반 분류 기능을 추가하여 사용자가 일기를 더 감성적이고 시각적으로 관리할 수 있도록 돕습니다.

2. 기능적 차별화
기존 특허에서 일기 및 일정 관리 시스템(1020130126094)에서는 일정 정보와 일기를 통합하여 자동으로 일기를 생성하는 방식입니다. 그러나 우리의 프로젝트는 자동 베스트샷 추천, 사용자 맞춤형 감정 태그, 그리고 자유로운 텍스트 수정 기능을 포함해 사용자가 더 개인화된 일기를 작성할 수 있게 도와줍니다.

3. AI 기반 감정 분석 및 개인화
기존 특허들은 감정 분석을 통해 사용자의 감정을 추적하거나 일기를 생성하는 데 주력하지만, 우리의 프로젝트는 사용자가 선택한 말투에 따라 자동으로 일기 초안을 개인화하며, AI 기반 감성 분석을 통해 자동으로 감정을 분석하여 사용자 맞춤형 결과를 제공합니다.


- 향후 특허 전략

구분 내용
기본 특허 AI 모델 및 감성 분석 기술 보호 - 감성 분석 및 자동 수정 기능
AI 기반 개인화 기술 - 맞춤형 일기 초안 제공 시스템
응용 특허 데이터 처리 및 관리 기술 보호 - 사진 메타데이터 처리와 위치 기반 일기 분류
방어 특허 AI 기반 감성 분석 및 자동 수정, UI/UX 차별화 기술

시장상황에 대한 분석

  • 경쟁제품 조사 비교

◇ 마이모리
- 서비스: 채팅형 일기, 일기 생성 및 사진 설명 작성, 답장 제공
- 강점: ui/ux가 직관적임, 습관적 일기를 쓸 수 있게 도와줌, 감성적 문체 제공
- 약점: 일기를 쓰기 위해서는 캐슈넛이라는 재화가 필요함 (광고를 보거나 구독필요)

◇ 답다
- 서비스: 감정 및 누구와 어디서, 무엇을 했는지 선택을 하면 자동 일기 생성, 12시간 이후 답장 제공
- 강점: 감정에 대한 구체적인 감정을 분류해줌, 쓰기 찬스를 통해 조금 더 편리하게 일기를 작성할 수 있음, 일기 작성 후 감정 태그를 붙여줌
- 약점: 감정 태그 분석 시간이 필요함, 다양한 기능이 없음

◇ 마인디
- 서비스: 채팅형 일기 및 AI 요약, 줄글형 일기 및 AI 분석
- 강점: 디자인이 다양해 토핑경제가 가능함, 다양한 형식으로 일기 작성 가능
- 약점: 답장 제공 시간이 필요함, 비슷한 기능(채팅형 일기, 줄글형 일기)이 많아서 복잡해보임

  • 마케팅 전략 제시

개발과제의 기대효과

기술적 기대효과

- 이 프로젝트에서는 이미지에서 추출한 시각 정보를 텍스트 생성에 활용하는 Multimodal AI 기술을 사용한다. 최신 Multimodal AI 기술을 실용적 활용 사례 제공으로 기술적 발전에 기여한다. 또한 사진 인식 및 분석 기술, 자연어처리 등의 실질적 응용기술 개발을 촉진할 수 있다.

- 사용자에 의해 개인화된 문체를 프롬프트에 사용하여 AI가 사용자 특유의 말투를 반영하여 일기의 초안을 생성한다. 이러한 사용자 맞춤형 기능은 기존 텍스트 생성 모델과 차별화된 성능과 자연스러움을 보여줄 수 있다.

- 사용자가 직접 좋은 이미지를 고르지 않아도 이미지 분석을 통해 좋은 이미지를 선택하게 된다. 또한 이미지만 업로드 후 일기를 작성하지 않아도 스스로 AI가 초안의 일기를 작성해주고 쉽게 수정할 수 있도록 도와준다. 이는 사용자의 노력을 크게 줄여주어 사용자 경험(UX)을 개선한다.

경제적, 사회적 기대 및 파급효과

- 기존 일기 작성 방식과는 다르게 사진 메타데이터 + AI 기술을 접목한 새로운 시장 영역을 개척한다.
- 바쁜 현대인들에게 AI를 통한 손쉬운 일기 작성 기능으로 자기 표현의 기회를 확대한다.
- 개인의 추억과 경험을 디지털 형식으로 보존하여 사회 전반의 기록 보존 및 문화 발전에 긍정적인 영향을 미친다.

기술개발 일정 및 추진체계

개발 일정

단계별 세부개발 내용 담당자 개발기간 (월단위) 비고
3 4 5 6
아이디어 구상 및 요구사항 분석 전원
개발 환경 및 컨벤션 설정 전원
서버 인프라 및 CI/CD 구축 이승목, 양나슬 서버 인프라: aws ec2, aws s3, aws route 53
CI/CD: git action
UI/UX 설계 박수빈
데이터베이스 설계 이승목
API 설계 이승목, 박동찬
프론트엔드 개발 박동찬, 박수빈
백엔드 개발 이승목
AI서버 개발 양나슬
이미지 선별 AI 모델 생성 박동찬, 양나슬
일기 생성 AI 모델 생성 박동찬, 양나슬
통합테스트 전원
배포 전원
유지보수 전원

구성원 및 추진체계

내용

설계

설계사양

제품의 요구사항

내용

설계 사양

내용

개념설계안

내용

이론적 계산 및 시뮬레이션

내용

상세설계 내용

가. 기술 스택

1. Front-end

1.1 React Native Expo

  • React Native 기반의 개발 플랫폼으로, 크로스 플랫폼 모바일 애플리케이션을 효율적으로 개발할 수 있다.
  • Expo의 내장 API와 컴포넌트를 활용하여 이미지 선택, 위치 정보 등의 네이티브 기능을 간편하게 구현한다.
  • 개발 환경 설정의 복잡성을 줄이고, iOS와 Android 동시 개발을 통해 효율성을 극대화한다.
  • expo-image-picker를 통한 사진 업로드 기능과 expo-notifications를 활용한 푸시 알림 서비스를 구현한다.

1.2 소셜 로그인 통합

  • @react-native-seoul/kakao-login과 @react-native-seoul/naver-login을 활용한 간편 로그인 서비스를 구현한다.
  • expo-apple-authentication을 통한 Apple 로그인 지원으로 iOS 사용자 편의성을 향상시킨다.
  • expo-auth-session을 활용한 OAuth 2.0 인증 플로우를 구현한다.

2. Back-end

2.1 Spring Boot

  • 스프링 프레임워크를 기반으로 한 빠르고 간편한 백엔드 프레임워크이다.
  • Spring Security, Spring Data JPA, Spring Validation 등의 다양한 기능을 플러그인 방식으로 쉽게 확장시킬 수 있다.
  • 내장 톰캣 서버를 통한 독립 실행 가능한 애플리케이션 구성으로 배포와 운영을 간소화한다.
  • AI 서버와의 HTTP 통신을 위한 RestTemplate/WebClient를 활용하여 마이크로서비스 아키텍처를 구현한다.

2.2 Spring Data JPA

  • 데이터베이스와의 상호작용을 간단하게 만들어주는 ORM 기술이다.
  • JPA를 통한 객체와 관계형 데이터베이스 간의 매핑을 자동화한다.
  • Repository 패턴을 통한 데이터 액세스 계층의 추상화로 개발 생산성을 향상시킨다.
  • 사용자 정보, 일기 데이터, 사진 메타데이터 등의 관계형 데이터를 효율적으로 관리한다.

2.3 Spring Security

  • 스프링 프레임워크 기반의 포괄적인 보안 프레임워크이다.
  • JWT 기반 무상태 인증 시스템을 구현하여 확장성과 성능을 최적화한다.
  • OAuth 2.0 소셜 로그인 통합으로 사용자 편의성과 보안성을 동시에 확보한다.
  • 개인 사진과 일기 데이터 보호를 위한 강화된 보안 정책을 적용한다.

2.4 MySQL

  • 관계형 데이터베이스 관리 시스템(RDBMS)으로 ACID 특성을 보장하는 안정적인 데이터 저장소이다.
  • 트랜잭션 지원을 통한 데이터 무결성 보장과 동시성 제어를 수행한다.

3. AI

3.1 FastAPI

  • Python 기반의 웹 프레임워크로 AI 모델 서빙에 최적화되어 있다.
  • Spring Boot 백엔드 서버로부터 이미지 분석 요청을 받아 AI 처리 결과를 반환하는 마이크로서비스로 동작한다.

3.2 OpenAI GPT API

  • OpenAI에서 제공하는 대규모 언어 모델 API로 고품질의 자연어 생성 서비스를 제공한다.
  • GPT-4.1을 활용한 일기 자동 생성과 GPT-4.1-nano를 통한 감정 이모티콘 추천 기능을 구현한다.
  • GPT-4o-mini를 활용하여 업로드된 여러 사진 중 베스트샷을 자동 선별하는 이미지 분석 기능을 제공한다.
  • 프롬프트 엔지니어링을 통한 개인화된 일기 작성 스타일 적용으로 사용자별 맞춤형 콘텐츠를 생성한다.

3.3 Google Gemini API

  • Google에서 제공하는 멀티모달 AI 모델로 일기 수정 및 개선 서비스를 제공한다.
  • Gemini-2.5-flash를 활용하여 사용자가 작성한 일기의 문체와 내용을 자연스럽게 수정한다.

3.4 Pydantic

  • FastAPI와 긴밀하게 통합된 데이터 검증 라이브러리로 API 요청/응답 데이터의 타입 안전성을 보장한다.
  • 자동 데이터 검증과 직렬화/역직렬화를 통한 안정적인 데이터 처리를 수행한다.

4. Infra

4.1 AWS EC2 (Elastic Compute Cloud)

  • Spring Boot 백엔드 서버와 FastAPI AI 서버를 각각 독립된 인스턴스에서 호스팅한다.
  • 가상 서버 인스턴스를 제공하여 마이크로서비스 아키텍처를 안정적으로 운영한다.

4.2 AWS S3 (Simple Storage Service)

  • 사용자가 업로드하는 이미지 파일을 안전하고 확장 가능한 객체 스토리지에 저장한다.

4.3 AWS RDS (Relational Database Service)

  • MySQL 데이터베이스를 클라우드에서 안정적으로 운영하기 위한 서비스이다.
  • 클라우드 환경에서의 확장성과 안정성을 확보하여 사용자 및 일기 데이터를 관리한다.

4.4 AWS Route 53

  • 고성능 DNS 웹 서비스로 도메인 관리와 트래픽 라우팅을 처리한다.

5. CI/CD

5.1 GitHub Actions

  • GitHub 저장소와 통합된 CI/CD 플랫폼으로 코드 변경 시 자동화된 빌드와 배포를 수행한다.
  • YAML 기반의 워크플로우 정의를 통해 테스트, 빌드, 배포 파이프라인을 코드로 관리한다.
  • 브랜치 전략과 연동하여 개발, 스테이징, 프로덕션 환경별 자동 배포를 구현한다.
  • AWS CLI와 연동하여 EC2 인스턴스 배포 자동화를 처리한다.


나. 데이터 흐름도

  • 소셜 로그인

데이터2.jpg

  • 사진 업로드

데이터3.jpg

  • 사진 선택 및 AI 추천

데이터4.jpg

  • 일기 생성

데이터5.jpg


다. ERD

  • 전체 ER 다이어그램

Erd.jpg


라. 클래스 다이어그램

  • User 관련 클래스

클래스1.jpg

  • Photo 관련 클래스

클래스2.jpg

  • Diary 관련 클래스

클래스3.jpg

  • photo <-> diary 관계

클래스4.jpg

  • Album 관련 클래스

클래스5.jpg

  • 키워드 관련 다이어그램

클래스6.jpg

  • 약관 관련 다이어그램

클래스7.jpg

결과 및 평가

완료 작품의 소개

프로토타입 사진 혹은 작동 장면

내용

포스터

내용

관련사업비 내역서

내용

완료작품의 평가

내용

향후계획

내용

특허 출원 내용

내용