[논문] CNN을 사용하여 시험 시간 휴대폰 사용 감지하기

정수현·2025년 1월 6일

논문

목록 보기
1/7

🔗 논문 링크

개요

  • 연구 목적 : 시험 시간에 부정행위를 적발하여 청렴성을 높이고자 한다.
  • 기존 연구 방식의 문제점 : 학생들의 의심스러운 활동을 모니터링하기 위해 시험 세션을 녹화가 필요하지만, 이러한 녹화는 활성화 장치가 효과적으로 분석하기에는 너무 긴 경우가 많으며, 세부사항을 놓칠 수 있다.
  • 해결 방안 : CNN(컨볼루션 신경망) 객체 감지 기술을 사용하여 휴대폰을 식별하였다.
  • 실험 결과 : 98.9% 정확도, 0.795 재현율, 0.697 F-측정, 평균 0.783 정밀도를 달성하였다.

1. 서론

  • 연구 목표 : 시험의 무결성을 보장하기 위하여 사전 녹화된 시험 비디오를 자동으로 분석하여 시험 중 휴대폰 사용과 같은 금지된 물질을 감지한다.

객체 탐지 기술

  • 이미지 분류: 이미지 전체에 대한 라벨링 (예: "이 이미지에는 무엇이 있는가?")
  • 객체 탐지: 이미지 내 여러 객체를 식별하고 위치를 표시 (예: "어떤 객체들이 어디에 있는가?")
  • Faster R-CNN L : Region Proposal Network(RPN)으로 객체 위치를 예측한 후 바운딩 박스 회귀 및 분류 수행.
  • Mask R-CNN : Faster R-CNN에 이진 마스크 출력 추가로 객체를 보다 세밀하게 구분.

MMDetection 라이브러리

  • Python 기반 오픈소스 객체 탐지 라이브러리.
    빠른 훈련 속도, 메모리 효율성, 높은 성능 및 정확도를 제공.
  • Mask R-CNN, Faster R-CNN, RetinaNet 등 다양한 모델 지원.
  • VOC 및 COCO 데이터셋을 결합하여 성능과 정확도 극대화

2. 방법론

2.1 데이터셋 생성

시험실에서 휴대전화를 사용하는 모습을 보여주는 기존 데이터셋이 없어서, 직접 생성하였다.

(1) 영상 녹화

  • 16명 학생, 4행 4열 배치
  • 총 10회의 실험
    6회 - 휴대전화 사용 허용, 4회 - 무작위 활동)

(2) 이미지 데이터셋 수집

  • 웹에서 추가 이미지를 수집하여 라벨링 및 주석 작업을 완료하였다.
  • 프레임 크기 : 224 * 224
  • 총 이미지 수 : 10,000개
  • 휴대전화가 포함된 이미지 - 6,600개
  • 데이터셋 - 스마트폰, 2세대 휴대전화로 구성
  • OpenLabeling이라는 오픈소스 라벨링 도구를 사용하였다.

(3) 최종 데이터셋

  • 유사한 클래스가 포함된 사전 훈련된 모델을 활용하는 것이 유리하다는 것을 확인하였다.
  • 훈련용 : 7,000개
  • 테스트용 : 1,500개
  • 검증용 : 1,500개

2.2 설계 및 평가

(1) 사용한 라이브러리 및 프레임워크

  • Faster R-CNN, MMDetection 라이브러리 : 시험장에서 휴대전화의 존재를 감지한다.
  • CNN 프레임워크 : COCO 및 Pascal VOC 스타일 데이터셋으로 사전 훈련된 모델

(2) 한계점

  • 영상의 촬영 각도와 휴대전화 객체의 작은 크기 때문에 사전 훈련된 네트워크는 영상에서 성능이 저조하였다. (특히 학생 손 안의 휴대전화 인식이 어려웠다.)
  • 기준 데이터셋에 충분한 휴대전화 클래스가 포함되어 있지 않았기 때문에, CNN 네트워크를 "미세 조정"하고 맞춤형 데이터셋을 만들어야 했다.

(3) 해결 방안 : 미세 조정 (fine-tuning)

  • 학생들이 휴대전화를 숨기더라도, 카메라가 휴대전화를 포착하는 순간 이를 감지할 수 있도록 훈련되었다.
  • 훈련용, 테스트용, 검증용에 사용된 이미지를 224 * 224 픽셀의 크기로 조정하여 네트워크를 미세 조정하였다.
  • 맞춤형 데이터셋을 사용해 네트워크를 훈련했고, 마지막 3개의 네트워크 레이어(FC, Softmax, 분류 출력 레이어)를 교체하였다.
  • FC 레이어 : 훈련 데이터셋에 있는 하나의 클래스에 맞게 설정되었다. FC 레이어의 학습률을 높여 네트워크 훈련 속도를 높였다.
    학습률을 0.01, 훈련 횟수를 50으로 설정하였다.
    검증데이터를 단일 GPU 시스템에서 활용하였다.
    네트워크 훈련 시 Adam 옵티마이저를 사용하였다. (메모리 요구량이 적고 확률적 경사 하강법보다 효율적)

맞춤형 네트워크 미세 조정에 사용된 파라미터 설정 요약

3. 결과 및 논의

  • 실험 목표 : 시험장에서 휴대전화의 존재를 식별한다.
  • 눈에 보이는 휴대전화를 감지할 수 있으나, 단일 프레임에서 모든 휴대전화를 감지하지는 못 했다. (정확도는 98.9% 를 기록했지만, 휴대전화를 단단히 쥑 ㅗ있을 경우 감지하는 데 어려움이 있었다.)

(1) MMDetection 모델 사용

  • Faster R-CNN 네트워크를 사용하였다.
  • 부분적으로 가려져 이썩나 손에 들려 있는 경우, 탐지에 한계를 보였다.
  • 다른 물체를 휴대전화로 잘못 분류하거나, VOC 데이터셋의 21개 클래스에 포함된 모든 물체를 분류하는 문제가 발생하였다.

(2) 맞춤형 CNN 네트워크 사용

  • MMDetection 모델의 한계를 극복하기 위해, 맞춤형 CNN 네트워크를 미세 조정(fine-tuning) 하여 목표를 달성하였다.
  • 과학 계산기와 같은 물체를 포함한 여러 휴대전화 객체를 효과적으로 탐지하였다.
  • 한계점
    ▪️ 휴대전화와 비슷하게 생긴 물체를 구분하는 데 일부 어려움이 있었다. 과학 계산기를 때때로 휴대전화로 잘못 인식하기도 하였다.
    ▪️ 다양한 데이터셋 및 영상에 대해 모델을 광범위학 ㅔ테스트할 시간이 부족하였다. 데이터 주석 작업이 시간이 걸리기 때문에 10,000개의 작은 샘플 크기만으로 훈련되었다.

4. 결론

  • 시험장에서 휴대전화를 감지하기 위해 기존 CNN 네트워크를 미세 조정(fine-tuning)하였다.
  • 카메라가 휴대전화를 포착할 경우, 모델은 이를 금지된 물체로 감지한다.
  • 맞춤형 데이터셋을 기반으로, 모델은 다양한 각도와 측면에서 작은 크기의 휴대전화를 탐지할 수 있도록 훈련되었다.
  • 결과적으로, 98.9%의 정확도를 달성하였으며, 연구에서 좋은 성능을 보였다.

성능 요약

  • 정확도(Accuracy) : 98.9%
  • 재현율(Recall) : 0.795 (19개의 실제 객체 중 18개를 탐지하였다.)
  • F-점수(F-measure) : 0.697 (모델의 분류 정확성과 강건함을 나타낸다.)
  • 평균 정밀도 (Average Precision) : 0.783

한계점

  • 영상에서 모든 휴대전화 발생 상황을 탐지하진 못 했다.
  • 학생들은 매우 창읮거으로 휴대전화를 숨긴다.

해결 방안 제안

  • 적대적 훈련(adversarial training) 모델을 활용할 것을 제안한다.
  • 학생들이 모델일 탐지하도록 돕는 훈련 데이터를 생성하는 데 보상을 제공함으로써, 부정행위를 탐지할 수 있도록 지원한다.
  • 자기 지도 학습(self-supervised learning) 모델과 적대적 훈련 모델을 결합하면 시험 중 부정행위 탐지의 실용성과 효과성을 향상시킬 수 있을 것이다.

0개의 댓글