2023-1 정보통신종합설계 중간발표�Crowd Counting with�A Latent Diffusion Model
May 17, 2023
지도 교수: 홍성은 교수님
팀원: 12171260 이시원
12181786 손기훈
12181795 안민혁
Contents
23-1 ICE Capstone
2
1. 프로젝트 요약
2. 연구 현황
3. 향후 연구 계획
1. 프로젝트 요약��� - Crowd Counting� � - HOW (Method)�
23-1 ICE Capstone
3
Crowd Counting
23-1 ICE Capstone
4
Computer Vision 분야�이미지나 비디오에서 사람들의 수를 정확하게 추정하는 작업
보안 및 비상 대응
사람들의 수를 모니터링함으로써, 잠재적인 위험 상황을 조기에 감지하고 사람들의 위치와 분포를 파악해 비상 대응을 효과적으로 수행
시설 관리
공공 장소나 이벤트 등에서 사람들의 수를 정확하게 파악함으로써 시설을 효율적으로 계획하고 관리
도시 계획과 설계
도시의 인구 분포와 이동 패턴을 이해하여 교통 체증이나 인프라 문제를 예측하고 대응
관심영역 파악
사람들의 동선과 관심영역을 파악함으로써 마케팅 및 판매 전략을 개선
HOW
23-1 ICE Capstone
5
딥러닝 기반의 이미지 생성 모델을 이용해�하나의 이미지를 다른 이미지로 변환하는 작업
Image-to-Image Translation
HOW
23-1 ICE Capstone
6
딥러닝 기반의 이미지 생성 모델을 이용해�하나의 이미지를 다른 이미지로 변환하는 작업 수행
Image-to-Image Translation
HOW
23-1 ICE Capstone
7
Loss
LDM 학습 과정
Denoising U-Net
노이즈를 잘 제거할 수 있도록 학습
입력
학습에 사용 될
Conditioning RGB
Diffusion
Feature에 노이즈 첨가
입력
학습에 사용 될 Ground Truth
Encoding
Decoding
출력
노이즈가 제거된 예측 Density Map과�Crowd의 수
Pretrained AutoEncoder와 함께
LDM이 Density Map을 예측할 수 있도록 학습
명
Embedding
X
2. 연구 현황��� � - 모델 학습� � - 데이터� � - 모델 구조�� - 손실 함수�� - 모델 평가� �
23-1 ICE Capstone
8
Hyperparameter
23-1 ICE Capstone
9
- Learning Rate: 1e-6
- Image Size: 64
- Scheduler_config: LambdaLinearScheduler
- Batch Size: 12
모델 학습(Training Dataset)
23-1 ICE Capstone
10
Input Image:�
Density Map의 Ground Truth로써, LDM에서의 최종 목표는 Density Map을 만들어 내는 것
Conditioning Image:
Conditioning Encoder를 통해 주어지는 Data로써, Denoising과정에서 조건을 위한 Data로 주어짐
모델 학습(LDM Noising)
23-1 ICE Capstone
11
Diffusion Model(Noising) : Input Image에 noise를 조금씩 추가하는 과정으로써, 최종적으로
완전히 순수한 noise가 될 때까지 noise추가를 반복�
모델 학습(LDM Denoising)
23-1 ICE Capstone
12
Diffusion Model(Denoising) : Noise를 조금씩 원래의 Input Image의 형태로 복원하고, 그 과정을 학습하여 최종적으로 Density Map을 얻을 수 있도록 학습하는 과정�
모델 학습(최종 목적)
23-1 ICE Capstone
13
학습된 LDM을 통해 RGB Image로 정확한 Density Map을 생성하는 것이 궁극적인 목표!
데이터
23-1 ICE Capstone
14
RGB
기존 Density Map GT
개선된 Density Map GT
데이터
23-1 ICE Capstone
15
기존 Density Map GT로 학습시킨 결과
개선된 Density Map GT로 학습시킨 결과
기존 Density Map Generator에 Gaussian kernel 적용
모델 구조
23-1 ICE Capstone
16
1. concatenate
2. Cross-Attention
Conditioning Image를
Input Image와 함께
사용할 방법을 선택해야 함
모델 구조(Concatenate)
23-1 ICE Capstone
17
Conditioning Encoder: SpatialRescaler
Concatenate는 단순하게 두개의 image를
이어붙이는 것!
따라서 Input Image와 Conditioning Image의 차원을 같게 해주어야 한다.
-> 이때 Conditioning Encoder로
‘SpatialRescaler’ 사용
모델 구조(Cross-Attention)
23-1 ICE Capstone
18
Conditioning Encoder: FrozenClipImageEmbedder
Cross-Attention은 서로 다른 2개의 Data(Density Map과 RGB Image)사이의 연관성을 학습하기 위한 방법
Cross-Attention을 사용하기 위해서는
Image를 Token화시켜야 한다.
-> 이때 Conditioning Encoder로
‘FrozenClipImageEmbedder’ 사용
23-1 ICE Capstone
19
모델 구조(Concatenate vs Cross-Attention 결과 비교)
위 결과만 보았을 때, 학습이 잘 이루어지는 것처럼 보임.
또한 Concatenate방식을 사용했을 때의 결과가 더 잘 나오는 것처럼 보임.
Training Loss
●: Concatenate Training Loss
●: Cross-Attention Training Loss
23-1 ICE Capstone
20
모델 구조(Concatenate vs Cross-Attention 결과 비교)
하지만, 300epoch정도부터 Concatenate방식을 사용한 모델에서 Validation Loss가 증가
Validation Loss
●: Concatenate Validation Loss
●: Cross-Attention Validation Loss
23-1 ICE Capstone
21
모델 구조(Concatenate vs Cross-Attention 결과 비교)
Model의 성능 측정의 위한 Test.py 코드 예시
-> 이후 여러 장의 Density Map을 한꺼번에 만들어내는 코드로 수정 예정
23-1 ICE Capstone
22
모델 구조(Concatenate vs Cross-Attention 결과 비교)
Concatenate모델의 결과
Cross-Attention모델의 결과
Input Image
Density Map Ground Truth
손실 함수(Loss Function for Diffusion Model)
23-1 ICE Capstone
23
1. 평균 절대 오차 (Mean Absolute Error, MAE)
2. 평균 제곱 오차 (Mean Squared Error, MSE)
손실 함수(MAE vs MSE 결과 비교)
23-1 ICE Capstone
24
위 예시는 Concate방식을 사용한 모델에서 L1과 L2 Loss를 각각 사용한 Training Loss결과
모든 결과에서 L2 Loss를 사용한 모델의 성능이 더 좋았다.
●: L1(MAE) Loss를 사용한 모델
●: L2(MSE) Loss를 사용한 모델
23-1 ICE Capstone
25
손실 함수(MAE vs MSE 결과 비교[Concat])
L1(MAE) Loss 결과
Input Image
Density Map Ground Truth
L2(MSE) Loss 결과
23-1 ICE Capstone
26
손실 함수(MAE vs MSE 결과 비교[Cross-Attn])
L1(MAE) Loss 결과
Input Image
Density Map Ground Truth
L2(MSE) Loss 결과
한계점
23-1 ICE Capstone
27
[Crowd Counting의 오차를 학습에 이용할 수 없다.]
일반적인
Crowd Counting 모델
Input
실제 군중 수: 27명
Loss Function
ex) -4명
Training
일반적인 Crowd Counting Model은 예측 군중 수와 실제 군중 수의 차이를 학습하여 이 차이를 줄이는 방향으로 학습
예측 군중 수: 31명
한계점
23-1 ICE Capstone
28
[Crowd Counting의 오차를 학습에 이용할 수 없다.]
Latent Diffusion Models
For Crowd Counting
Input
Loss Function
Training
반면, Latent Diffusion Model의 학습 목표는 최대한 정확한
Density Map을 생성하는 것. 즉, Crowd Counting의 정확도를 높이는 방향으로 학습하는 것이 아닌, 정확한 Density Map을 생성하기 위한 학습
->따라서 Density Map의 질이 성능을 좌우한다.
Ground Truth Density Map
Estimation Density Map
Crowd Counting Evaluation
23-1 ICE Capstone
29
1. Mean Absolute Error(MAE)
2. Mean Squared Error(MSE)
4. Root Mean Square Error (RMSE)
3. Grid Average Mean Absolute Error (GAME)
각 Loss Function은 Crowd Counting에서 가장
많이 사용되는 Loss Function중 4가지
Loss Function에서 각 변수는 군중 계수를 의미
즉, 실제 군중 수와 예측 군중 수의 오차를 계산
Crowd Counting Evaluation
23-1 ICE Capstone
30
다음 코드는 영상처리 기법을 활용하여, Density Map을 통해 Crowd Counting을 할 수 있는 코드
현재는 하나의 입력값을 받아 군중 수를
셀 수 있도록 코딩되어 있지만,
이후 Ground Truth Density Map과
Estimation Density Map을 여러 장
입력 받고, 값을 통해 MAE, MSE 등과
같은 오차 정보를 출력할 수 있도록
코딩하여, 모델의 정확도를 측정할 예정
Counting.py
Crowd Counting Evaluation(Example)
23-1 ICE Capstone
31
Ground Truth Crowd Counting = 39
Estimation Crowd Counting = 30
Crowd Counting Evaluation(Example)
23-1 ICE Capstone
32
Ground Truth Crowd Counting = 39
Estimation Crowd Counting = 30
Error=39-30
3. 향후 연구 계획��� � � �
23-1 ICE Capstone
33
향후 연구 계획
- MAE, MSE, GAME, RMSE, Hinge 등
23-1 ICE Capstone
34
1. Latent Diffusion모델의 최적화된 Loss Function 연구
향후 연구 계획
- Learning Rate, Batch Size, Image size 등
23-1 ICE Capstone
35
2. 모델 성능 향상을 위한 파라미터 값 수정
향후 연구 계획
23-1 ICE Capstone
36
3. Crowd Counting을 위한 Model 일체화
학습된 LDM
Crowd Counting
간단한 영상처리를 통해 군중 수를 계산
입력
입력 RGB
출력
예측 Density Map을 획득
RGB 이미지가 학습된 LDM을 통과
명
일체화
향후 연구 계획
23-1 ICE Capstone
37
4. Real-Time Crowd Counting 구현
Real Time Crowd Counting Model
학습된 LDM
입력
입력 RGB(Camera)
출력
예측 Density Map을 획득
RGB 이미지가 학습된 LDM을 통과
Crowd Counting
간단한 영상처리를 통해 군중 수를 계산
명
출처 & 참고문헌
[1] "꽃보다 사람이 더 많아"…추위 이긴 윤중로 벚꽃축제 인파(종합) . (2018). https://www.yna.co.kr/view/AKR20180408022051004.
[2] 이태원 압사 사고 . (2022). https://ko.wikipedia.org/wiki/%EC%9D%B4%ED%83%9C%EC%9B%90_%EC%95%95%EC%82%AC_%EC%82%AC%EA%B3%A0.
[3] 다인스, AI 인파 관리·군중계수 전용 솔루션 출시 . (2023). https://www.aitimes.com/news/articleView.html?idxno=148904.
[4] Dongze Lian, Jing Li, Jia Zheng, Weixin Luo, Shenghua Gao, & . (2019). Density Map Regression Guided Detection Network for RGB-D Crowd Counting and Localization (pp. 126). n.p.: CVPR.
[5] Reza Bahmanyar, Elenora Vig, Peter Reinartz. (2019). MRCNet: Crowd Counting and Density Map Estimation in Aerial and Ground Imagery (pp. 30). n.p.: BMVC-ODRSS
[6] Dongze Lian, Jing Li, Jia Zheng, Weixin Luo, Shenghua Gao. (2022). High-Resolution Image Synthesis with Latent Diffusion Models (pp. 751). n.p.: CVPR.
[7] D. Lian, X. Chen, J. Li, W. Luo and S. Gao, "Locating and Counting Heads in Crowds With a Depth Prior," in IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 44, no. 12, pp. 9056-9072, 1 Dec. 2022, doi: 10.1109/TPAMI.2021.3124956.
[8] Crowd Counting using Deep Learning . (2021). https://www.analyticsvidhya.com/blog/2021/06/crowd-counting-using-deep-learning/.
[9] Zhang, Cong, et al. "Cross-scene crowd counting via deep convolutional neural networks." Proceedings of the IEEE conference on computer vision and pattern recognition. 2015.
[10] Babu Sam, Deepak, Shiv Surya, and R. Venkatesh Babu. "Switching convolutional neural network for crowd counting." Proceedings of the IEEE conference on computer vision and pattern recognition. 2017.
[11] Liu, Zhengyi, et al. "RGB-T Multi-Modal Crowd Counting Based on Transformer." arXiv preprint arXiv:2301.03033 (2023).
23-1 ICE Capstone
38
출처 & 참고문헌
[12] Lian, Dongze, et al. "Density map regression guided detection network for rgb-d crowd counting and localization." Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2019.
[13] Bahmanyar, Reza, Elenora Vig, and Peter Reinartz. "MRCNet: Crowd counting and density map estimation in aerial and ground imagery." arXiv preprint arXiv:1909.12743 (2019).
[14] Wan, Jia, and Antoni Chan. "Adaptive density map generation for crowd counting." Proceedings of the IEEE/CVF international conference on computer vision. 2019
[15] Ho, Jonathan, Ajay Jain, and Pieter Abbeel. "Denoising diffusion probabilistic models." Advances in Neural Information Processing Systems 33 (2020): 6840-6851.
[16] https://vaclavkosar.com/ml/cross-attention-in-transformer-architecture
23-1 ICE Capstone
39