SlideShare a Scribd company logo
1 of 26
시스템 프로그램 설계2 최종발표
2012003738 차정민
2012004281 조경재
PRESENTATION
CCTV using Android
FaceDetection 및 MotionDetection을
활용한 방범용 CCTV
스마트폰을 세우면 무게중심이 맞지 않아
BeautoRober의 기동성이 떨어짐. 기존
애완동물의 기능 중 방범 기능에 초점을
두어 새로운 아이디어로 전환하였음.
INDEX
1. 동작 개요
2. 세부 구현 및 동작
- FaceDetection 활용
- MotionDetection 활용
- BeautoRover 활용
3. 어려웠던 점과 해결 방법
4. 아쉬운 점과 발전 기대 사항
1. 동작 개요
CCTV System
TCP server
- CCTV Phone (관리용 폰)
- Guardian Phone (경비원 폰)
- Beauto Rover
- TCP 서버
CCTV System
- CCTV Phone (관리용 폰)
CCTV System
- Guardian Phone (경비원 폰)
2-1. FaceDetection 활용
Face Detection
- 주인이 집에 있는 HomeMode에서
얼굴을 감지하는 기능
- 주인이 인지되면 경비원에게 반기도록 명령
- 낯선 사람이 인지되면 경비원에게
방문자의 신원을 밝히도록 명령
command
“반가워요!”
"누구십니까?”
Face Detection (얼굴 감지)
- SurfaceView로 CCTV 카메라로부터의 실시간 화상 확보
- Android의 hardware package에서 제공하는 Camera.Face와
FaceDetectionListener를 통해 실시간 얼굴 감지
- OpenCV로도 FaceDetection이 가능하지만
프레임 드롭과 낮은 정확도가 불편함을 가져다 주어
안드로이드에서 제공하는 하드웨어 패키지를 사용함.
Face Recognition (얼굴 인지)
- Face Recognition을 위해서는 얼굴을 구별해야 하므로
Detection으로부터 얻은 얼굴의 정보(Facial Features)가 필요함.
- Face Detection에서 사용한 Camera.Face에는 정보가 부족
- FaceDetector.Face를 사용함.
- 얼굴인지 알고리즘으로
얼굴 전체 면적에 상대적인 눈코입 위치와
눈 사이의 거리를 기준으로 인지하였음.
- GT-I300 모델에서 지원이 됨
Face Detection & Recognition
후면 카메라의 실시간 화상
얼굴 감지시
감지한 얼굴 영역을
사각형으로 표시함.
(실시간 얼굴 감지)
얼굴 감지 후 경비원
폰에게 적절한 행동을
명령함.
2-2. Motion Detection
Motion Detection
- 주인이 집에 없는 GuardMode에서는 도둑이 들었는지 확인해야 함.
- 도둑은 얼굴을 가린 경우 FaceDetection기능만으로는
도둑을 포착하는 것이 불충분함.
- GuardMode에서 움직임을 포착하는 기능
Motion Detection
- 주기적으로 현재 camera의 preview
화면과 다음 preview화면을 비교
- Pixel threshold & image threshold의 상수 값에 따라
모션 감지 민감도 조절
- 화면의 pixel들이 pixel threshold만큼 다를 경우에
그 pixel의 차이를 축적
- 축적한 수가 image threshold의 값을 넘어설 경우
모션이 일어났다고 판단
- 이렇게 모션이 일어난 경우, Camera capture로
사진 저장하고 SMS로 전송한다.
Motion Detection
- 카메라 앞에서 손을 움직였을 때의 motion detection
- Motion detection을 위한 화면 비교 분석 로그
2-3. BeautoRover 활용
경비원 폰과 BeautoRover의 동작
1. HomeMode에서 주인을 인지한 경우 원으로 돌면서 반겨준다.
2. HomeMode에서 낯선 사람을 인지한 경우 신원을 확인한다.
3. GuardMode에서는 움직임을 포착하면
원으로 돌면서siren 소리를 낸다.
“반가워요”
“누구세요?”
(siren sound)
BeautoRover 제어 및 경비원 폰의 행동 기작
- 경비원 폰은 CCTV 폰로부터 받은 명령으로
BeautoRover의 움직임을 제어한다.
- BeautoRover의 움직임을 제어하는 동시에 Audio를 출력함.
- Bluetooth에서 sendMessage(“character”)로
BeautoRover의 움직임 제어
- Audio 출력시 MediaPlayer를 이용해서
raw폴더에 저장된 오디오 파일을 가져와서 play
3. 어려웠던 점과 해결 방법
CCTV 폰과 경비원 폰 사이의 통신
- 모든 폰과 뷰토로버 사이는 블루투스 방식으로 통신을 할 예정이었음.
- 경비원 폰은 CCTV 폰과 뷰토로버와 동시에 통신을 해야 함.
- 블루투스 방식으로 다중 기기와 소통하는 것이 어려움.
 CCTV 폰과 뷰토로버 폰은 수업시간에 배웠던
TCP 통신을 활용하는 방향으로 해결.
openCV 대체
- Face Detection과 Recognition 기능을 위해 openCV
라이브러리를 사용할 예정이었음.
- openCV 라이브러리를 사용하니 예상보다 성능이나 정확성이 낮음.
 Android hardware 패키지에서 제공하는 Camera.Face,
FaceDetectionListener 등을 활용하여 해결
MotionDetection의 정밀성 조절
- 처음에 구현한 Motion Detection 기능이 너무 민감하거나,
한번 모션이 인식한 후 모션이 없을 때도 모션이 있는 것으로
인식되는 문제가 있었음.
 수 차례 실험으로 실생활 수준에서 모션을 감지할 수 있는
pixel threshold, image threshold 값을 도출하여 구현시 적용함
4. 아쉬웠던 점과 발전 기대 사항
Hardware limitations for face recognition
- Camera.Face와 FaceDetector.Face에서 제공하는
Facial Feature들은 모든 기기에서 제공되지 않음.
- 하드웨어적 제한 때문에 정확성이 떨어지는 얼굴 인지 기능
 Camera.Face에서 제공하는 Facial Feature를
제대로 지원하는 안드로이드 폰을 사용하여 프로젝트를 진행
 속도가 느려도 openCV 라이브러리를 활용
THANK YOU!!

More Related Content

Featured

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by HubspotMarius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 

Featured (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

시스템 프로그램 설계 2 최종발표 (차정민, 조경재)

  • 1. 시스템 프로그램 설계2 최종발표 2012003738 차정민 2012004281 조경재
  • 2. PRESENTATION CCTV using Android FaceDetection 및 MotionDetection을 활용한 방범용 CCTV 스마트폰을 세우면 무게중심이 맞지 않아 BeautoRober의 기동성이 떨어짐. 기존 애완동물의 기능 중 방범 기능에 초점을 두어 새로운 아이디어로 전환하였음.
  • 3. INDEX 1. 동작 개요 2. 세부 구현 및 동작 - FaceDetection 활용 - MotionDetection 활용 - BeautoRover 활용 3. 어려웠던 점과 해결 방법 4. 아쉬운 점과 발전 기대 사항
  • 5. CCTV System TCP server - CCTV Phone (관리용 폰) - Guardian Phone (경비원 폰) - Beauto Rover - TCP 서버
  • 6. CCTV System - CCTV Phone (관리용 폰)
  • 7. CCTV System - Guardian Phone (경비원 폰)
  • 9. Face Detection - 주인이 집에 있는 HomeMode에서 얼굴을 감지하는 기능 - 주인이 인지되면 경비원에게 반기도록 명령 - 낯선 사람이 인지되면 경비원에게 방문자의 신원을 밝히도록 명령 command “반가워요!” "누구십니까?”
  • 10. Face Detection (얼굴 감지) - SurfaceView로 CCTV 카메라로부터의 실시간 화상 확보 - Android의 hardware package에서 제공하는 Camera.Face와 FaceDetectionListener를 통해 실시간 얼굴 감지 - OpenCV로도 FaceDetection이 가능하지만 프레임 드롭과 낮은 정확도가 불편함을 가져다 주어 안드로이드에서 제공하는 하드웨어 패키지를 사용함.
  • 11. Face Recognition (얼굴 인지) - Face Recognition을 위해서는 얼굴을 구별해야 하므로 Detection으로부터 얻은 얼굴의 정보(Facial Features)가 필요함. - Face Detection에서 사용한 Camera.Face에는 정보가 부족 - FaceDetector.Face를 사용함. - 얼굴인지 알고리즘으로 얼굴 전체 면적에 상대적인 눈코입 위치와 눈 사이의 거리를 기준으로 인지하였음. - GT-I300 모델에서 지원이 됨
  • 12. Face Detection & Recognition 후면 카메라의 실시간 화상 얼굴 감지시 감지한 얼굴 영역을 사각형으로 표시함. (실시간 얼굴 감지) 얼굴 감지 후 경비원 폰에게 적절한 행동을 명령함.
  • 14. Motion Detection - 주인이 집에 없는 GuardMode에서는 도둑이 들었는지 확인해야 함. - 도둑은 얼굴을 가린 경우 FaceDetection기능만으로는 도둑을 포착하는 것이 불충분함. - GuardMode에서 움직임을 포착하는 기능
  • 15. Motion Detection - 주기적으로 현재 camera의 preview 화면과 다음 preview화면을 비교 - Pixel threshold & image threshold의 상수 값에 따라 모션 감지 민감도 조절 - 화면의 pixel들이 pixel threshold만큼 다를 경우에 그 pixel의 차이를 축적 - 축적한 수가 image threshold의 값을 넘어설 경우 모션이 일어났다고 판단 - 이렇게 모션이 일어난 경우, Camera capture로 사진 저장하고 SMS로 전송한다.
  • 16. Motion Detection - 카메라 앞에서 손을 움직였을 때의 motion detection - Motion detection을 위한 화면 비교 분석 로그
  • 18. 경비원 폰과 BeautoRover의 동작 1. HomeMode에서 주인을 인지한 경우 원으로 돌면서 반겨준다. 2. HomeMode에서 낯선 사람을 인지한 경우 신원을 확인한다. 3. GuardMode에서는 움직임을 포착하면 원으로 돌면서siren 소리를 낸다. “반가워요” “누구세요?” (siren sound)
  • 19. BeautoRover 제어 및 경비원 폰의 행동 기작 - 경비원 폰은 CCTV 폰로부터 받은 명령으로 BeautoRover의 움직임을 제어한다. - BeautoRover의 움직임을 제어하는 동시에 Audio를 출력함. - Bluetooth에서 sendMessage(“character”)로 BeautoRover의 움직임 제어 - Audio 출력시 MediaPlayer를 이용해서 raw폴더에 저장된 오디오 파일을 가져와서 play
  • 20. 3. 어려웠던 점과 해결 방법
  • 21. CCTV 폰과 경비원 폰 사이의 통신 - 모든 폰과 뷰토로버 사이는 블루투스 방식으로 통신을 할 예정이었음. - 경비원 폰은 CCTV 폰과 뷰토로버와 동시에 통신을 해야 함. - 블루투스 방식으로 다중 기기와 소통하는 것이 어려움.  CCTV 폰과 뷰토로버 폰은 수업시간에 배웠던 TCP 통신을 활용하는 방향으로 해결.
  • 22. openCV 대체 - Face Detection과 Recognition 기능을 위해 openCV 라이브러리를 사용할 예정이었음. - openCV 라이브러리를 사용하니 예상보다 성능이나 정확성이 낮음.  Android hardware 패키지에서 제공하는 Camera.Face, FaceDetectionListener 등을 활용하여 해결
  • 23. MotionDetection의 정밀성 조절 - 처음에 구현한 Motion Detection 기능이 너무 민감하거나, 한번 모션이 인식한 후 모션이 없을 때도 모션이 있는 것으로 인식되는 문제가 있었음.  수 차례 실험으로 실생활 수준에서 모션을 감지할 수 있는 pixel threshold, image threshold 값을 도출하여 구현시 적용함
  • 24. 4. 아쉬웠던 점과 발전 기대 사항
  • 25. Hardware limitations for face recognition - Camera.Face와 FaceDetector.Face에서 제공하는 Facial Feature들은 모든 기기에서 제공되지 않음. - 하드웨어적 제한 때문에 정확성이 떨어지는 얼굴 인지 기능  Camera.Face에서 제공하는 Facial Feature를 제대로 지원하는 안드로이드 폰을 사용하여 프로젝트를 진행  속도가 느려도 openCV 라이브러리를 활용

Editor's Notes

  1. FaceDetection 활용 MotionDetection 활용 BeautoRover 활용
  2. 주기적으로 현재 camera preview 화면과 그 다음 preview화면 비교 pixel threshold & image threshold의 상수 값에 따라 motion감지 예민성 조절 각 화면의 대응하는 pixel에 pixel threshold만큼 ( ex) 10% difference ) 다를 경우를 축적 축적한 수가 image threshold의 값을 넘어설 경우 image가 다르다고 인식 Preview화면과 다음 화면이 다를경우 Camera capture후 sdcard에 파일 write Tcp 소켓 통신
  3. 주기적으로 현재 camera preview 화면과 그 다음 preview화면 비교 pixel threshold & image threshold의 상수 값에 따라 motion감지 예민성 조절 각 화면의 대응하는 pixel에 pixel threshold만큼 ( ex) 10% difference ) 다를 경우를 축적 축적한 수가 image threshold의 값을 넘어설 경우 image가 다르다고 인식 Preview화면과 다음 화면이 다를경우 Camera capture후 sdcard에 파일 write Tcp 소켓 통신
  4. Tcp 소켓을 받아서 BeautoRover에 블루투스 통신을 해서 움직임 제어 움직임과 같이 Audio출력 Bluetooth에서 sendMessage(“character”)를 통해 BeautoRover의 움직임 제어 sendMessage(“f”) => BeautoRover 앞으로 직진 sendMessage(“l”) => BeautoRover 옆으로 회전 sendMessage(“s”) => BeautoRover 멈춤 sendMessage호출시 connectedThread에서 블루투스 캐릭터 전송 - Audio 출력기 MediaPlayer를 이용해서 raw파일에 저장된 오디오 파일을 가져와서 play