


















Preview text:
  lOMoAR cPSD| 58933639
BỘ GIÁO DỤC VÀ ĐÀO TẠO 
TRƯỜNG ĐH SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH 
KHOA ĐIỆN – ĐIỆN TỬ      BÁO CÁO  Môn: Xử Lí Ảnh 
ĐỀ TÀI: HỆ THỐNG ĐO CHIỀU CAO TỰ ĐỘNG CHO 
NGƯỜI SỬ DỤNG CAMERA 
 GVHD: TS. Dương Minh Thiện 
 SVTH: Thạch Lâm Huy – 22151094 
Lê Thế Khôi – 22151106 
TP. Hồ Chí Minh, tháng 06 năm 2025        lOMoAR cPSD| 58933639
Nhóm sinh viên thực hiện.  STT  HỌ VÀ TÊN  MSSV 
CÔNG VIỆC THỰC HIỆN  KẾT QUẢ  1  Lê Thế Khôi  22151106 
Xử lí ảnh, file word, ppt  100%  2  Thạch Lâm Huy  22151094 
Xử lí ảnh , file word, ppt  100% 
NHẬN XÉT CỦA GIẢNG VIÊN 
....................................................................................................................................... 
....................................................................................................................................... 
....................................................................................................................................... 
....................................................................................................................................... 
....................................................................................................................................... 
....................................................................................................................................... 
....................................................................................................................................... 
....................................................................................................................................... 
....................................................................................................................................... 
....................................................................................................................................... 
....................................................................................................................................... 
....................................................................................................................................... 
....................................................................................................................................... 
....................................................................................................................................... 
....................................................................................................................................... 
....................................................................................................................................... 
....................................................................................................................................... 
...................................................................................................................................... . 
...................................................................................................................................... . 
....................................................................................................................................... 
....................................................................................................................................... 
Điểm ...........................................................................................................................   Kí tên      lOMoAR cPSD| 58933639 LỜI CẢM ƠN 
Trong khoảng thời gian được học tập và rèn luyện dưới mái trường Đại học Sư phạm 
Kỹ thuật Tp. Hồ Chí Minh đã cho chúng em cơ hội tiếp thu những kiến thức không chỉ có 
trong sách vở mà còn là những câu chuyện thực tế, những ví dụ minh họa sinh động được 
các Thầy, Cô truyền đạt vào những buổi học lý thuyết và thực hành, tất cả sẽ là hành trang 
tri thức quý báu, là nền tảng vững vàng nâng bước chúng em trên con đường sự nghiệp phía  trước. 
Nhóm em xin được gửi lời cảm ơn chân thành đến thầy Dương Minh Thiện đã tận tình 
chỉ bảo, hướng dẫn và đóng góp những ý kiến vô cùng quý giá giúp nhóm em hoàn thành 
báo cáo cuối kì cho môn học xử lí ảnh. Nhóm cũng xin cám ơn quý Thầy, Cô đang công tác 
tại khoa Điện - Điện tử cùng các Thầy, Cô trong toàn trường đã giảng dạy nhiệt tình và truyền 
tải các kinh nghiệm quý giá cho nhóm trong suốt thời gian học vừa qua. 
Tuy đã có sự chuẩn bị trong bài báo cáo cuối kì môn học này song không thể tránh 
khỏi những sai sót. Vì vậy, nhóm em rất mong nhận được sự chỉ bảo, đóng góp ý kiến của 
Thầy để nhóm có cơ hội nâng cao kiến thức và kĩ năng của mình, cũng như là một nền tảng 
vững chắc để nhóm tiến xa hơn trong tương lai. 
Nhóm em xin chân thành cảm ơn !                  lOMoAR cPSD| 58933639 MỤC LỤC 
LỜI CẢM ƠN ...................................................................................................................... 1 
MỤC LỤC ............................................................................................................................ 2 
DANH MỤC HÌNH ẢNH ................................................................................................... 2 
Chương 1. TỔNG QUAN .................................................................................................... 3 
1.1. Đặt vấn đề .............................................................................................................. 3 
1.2. Mục tiêu đề tài ....................................................................................................... 3 
1.3. Nội dung ................................................................................................................. 3 
Chương 2. CƠ SỞ LÝ THUYẾT........................................................................................ 4 
2.1. Giới thiệu về xử lí ảnh ........................................................................................... 4 
2.2. Thuật toán xử lí ..................................................................................................... 4 
2.2.1. Giới thiệu về mô hình YOLO ............................................................................ 4 
2.3. Thư viện OpenCV ................................................................................................. 7 
2.4. Thư viện PyTorch .................................................................................................. 7 
Chương 3. XÂY DỰNG HỆ THỐNG ................................................................................ 9 
3.1. Lưu đồ giải thuật ................................................................................................... 9 
3.2. Quy trình hoạt động .............................................................................................. 9 
Chương 4. KẾT QUẢ ........................................................................................................ 14 
Hình ảnh kết quả đạt được: ...................................................................................... 14 
Chương 5. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ..................................................... 16 
5.1. Đánh giá ............................................................................................................... 16 
5.2. Kết luận ................................................................................................................ 16 
5.3. Hướng phát triển ................................................................................................. 16 
TÀI LIỆU THAM KHẢO ................................................................................................. 17    DANH MỤC HÌNH ẢNH 
Hình 1. Các bước cơ bản trong quá trình xử lí ảnh..........................................................5 
Hình 2. Hình ảnh minh hoạ.................................................................................................6 
Hình 4. Thư viện OpenCV...................................................................................................8 
Hình 5. Thư viện PyTorch...................................................................................................9 
Hình 6. Lưu đồ giải thuật của hệ thống...........................................................................10 
Hình 7. Hình ảnh đo thực tế..............................................................................................14 
Hình 8. Hình ảnh kết quả đạt được..................................................................................14        lOMoAR cPSD| 58933639
Chương 1. TỔNG QUAN 
1.1. Đặt vấn đề 
Trong bối cảnh xã hội ngày càng phát triển theo hướng công nghiệp hóa, hiện đại hóa, 
việc ứng dụng khoa học kỹ thuật vào đời sống con người trở nên ngày càng phổ biến và đóng 
vai trò quan trọng trong việc nâng cao chất lượng sống. Đặc biệt, công nghệ xử lý ảnh và trí 
tuệ nhân tạo đang dần khẳng định vị thế trong nhiều lĩnh vực như y tế, nông nghiệp, sản 
xuất, và đời sống thường nhật. 
Trong số đó, nhu cầu đo chiều cao cơ thể người là một yêu cầu phổ biến trong y tế, thể 
thao, giáo dục, cũng như trong các ứng dụng quản lý thông tin cá nhân. Tuy nhiên, phương 
pháp đo truyền thống bằng thước cơ học thường mất thời gian, yêu cầu sự hỗ trợ của người 
khác, và không phù hợp với môi trường tự động hóa. 
Vì vậy, việc xây dựng một hệ thống đo chiều cao tự động sử dụng camera là rất cần 
thiết. Hệ thống này có thể ứng dụng công nghệ xử lý ảnh để nhận dạng và phân tích hình 
ảnh cơ thể người, từ đó tính toán chiều cao một cách nhanh chóng, chính xác mà không cần 
tiếp xúc vật lý. Đây không chỉ là một giải pháp tiện lợi và hiện đại, mà còn góp phần vào xu 
hướng phát triển các hệ thống thông minh, tự động hóa trong đời sống. 
Từ những lý do trên, nhóm em thực hiện đề tài “Hệ thống đo chiều cao tự động cho 
người sử dụng camera” với mong muốn kết hợp giữa lý thuyết và thực tiễn, áp dụng những 
gì đã học để giải quyết bài toán đời sống một cách hiệu quả và sáng tạo. 
1.2. Mục tiêu đề tài 
Đề tài nghiên cứu được lên ý tưởng và thực hiện hướng đến những mục tiêu: 
- Xây dựng một hệ thống phát hiện và đo chiều cao con người theo thời gian thực, sử 
dụng camera điện thoại kết nối qua mạng nội bộ (IP Webcam). 
- Ứng dụng các kỹ thuật xử lý ảnh để phát hiện và tính toán chiều cao một cách chính  xác. 
- Giao diện đơn giản, dễ sử dụng, có thể triển khai trên các thiết bị, có khả năng áp  dụng thực tế.  1.3. Nội dung  Chương 1: Tổng quan 
Chương 2: Cơ sở lý thuyết 
Chương 3: Xây dựng chương trình  Chương 4: Kết quả 
Chương 5: Kết luận và hướng phát triển      lOMoAR cPSD| 58933639
Chương 2. CƠ SỞ LÝ THUYẾT 
2.1. Giới thiệu về xử lí ảnh 
Xử lý ảnh (Image Processing), là quá trình sử dụng máy tính để thực hiện các thao 
tác phân tích, biến đổi hoặc nâng cao hình ảnh thông qua các thuật toán chuyên biệt. Đây là 
một lĩnh vực đa ngành, kết hợp giữa khoa học máy tính, toán học ứng dụng và kỹ thuật điện 
– điện tử, nhằm giúp trích xuất thông tin hữu ích từ hình ảnh, cải thiện chất lượng thị giác 
hoặc phục vụ các mục đích đặc thù. 
Khác với xử lý ảnh tương tự (analog), xử lý ảnh số có nhiều lợi thế vượt trội như: 
tính tự động hóa cao, dễ tích hợp vào hệ thống thông minh; linh hoạt trong việc xử lý và điều 
chỉnh tham số; khả năng thực hiện các phép biến đổi phức tạp một cách chính xác và ổn 
định. Nhờ vào các ưu điểm này, xử lý ảnh kỹ thuật số ngày nay đã được ứng dụng rộng rãi 
trong nhiều lĩnh vực thực tiễn, chẳng hạn như: Y tế (phân tích ảnh chụp X-quang, MRI, CT 
để hỗ trợ chẩn đoán bệnh,..), An ninh (nhận diện khuôn mặt, giám sát tự động qua camera,..), 
Viễn thám (xử lý ảnh vệ tinh phục vụ đo đạc địa hình, theo dõi môi trường,..), Công nghiệp 
(kiểm tra bề mặt sản phẩm, phát hiện lỗi trong dây chuyền sản xuất,..) và nhiều lĩnh vực khác  nửa. 
Quá trình xử lý ảnh kỹ thuật số thường trải qua các bước cơ bản sau: 
- Thu nhận ảnh: sử dụng cảm biến, camera, hoặc thiết bị quét. 
- Tiền xử lý ảnh: cải thiện chất lượng ban đầu như khử nhiễu, tăng độ sắc nét hoặc  tương phản. 
- Phân đoạn ảnh: chia ảnh thành các vùng có đặc điểm riêng biệt, thường là vật thể và  nền. 
- Trích xuất đặc trưng: xác định các đặc điểm quan trọng như cạnh, hình dạng, màu  sắc,... 
- Nhận dạng và phân tích: áp dụng các thuật toán để phân loại, đo đạc, hoặc ra quyết 
định dựa trên hình ảnh.   
Hình 1. Các bước cơ bản trong quá trình xử lí ảnh 
2.2. Thuật toán xử lí 
2.2.1. Giới thiệu về mô hình YOLO 
YOLO (You Only Look Once) là một trong những mô hình nổi tiếng nhất trong Object 
Detection (phát hiện đối tượng) với khả năng xử lý nhanh và độ chính xác cao, là một mô      lOMoAR cPSD| 58933639
hình CNN để detect object mà một ưu điểm nổi trội là nhanh hơn nhiều so với những mô 
hình cũ. Khác với các phương pháp truyền thống tách riêng bước tạo vùng đề xuất (region 
proposals) và bước phân loại đối tượng, YOLO xử lý tất cả trong một lần, tức là "nhìn một 
lần" và dự đoán cả Bounding box (hộp chứa đối tượng) và Class (loại đối tượng). 
YOLO được ứng dụng rộng rãi trong nhiều lĩnh vực: giám sát an ninh (nhận diện 
người, xe, hành vi đáng ngờ); Xe tự lái (Phát hiện người đi bộ, biển báo, phương tiện); Y tế 
(Phát hiện khối u, tế bào trong ảnh y học); Nông nghiệp (Đếm số cây, theo dõi sâu bệnh);...   
Hình 2. Hình ảnh minh hoạ 
Cách hoạt động của YOLO 
YOLO chia ảnh đầu vào thành một lưới gồm nhiều ô, mỗi ô có trách nhiệm dự đoán: 
- Một hoặc nhiều bounding box 
- Xác suất tồn tại đối tượng trong ô đó 
- Class probabilities (khả năng thuộc các lớp như người, xe, 
chó...) Cụ thể, mỗi bounding box chứa: 
- (x, y): tọa độ tâm của box 
- (w, h): chiều rộng và chiều cao (tương đối với toàn ảnh) 
- Confidence score: độ tin cậy có đối tượng ở box đó 
- Class probabilities: xác suất đối tượng thuộc các lớp khác  nhau 
Về cơ bản, YOLO chia ảnh đầu vào thành các ô nhỏ, mô hình sẽ dự đoán xác xuất đối 
tượng trong các đường bao (bounding-box) xung quanh mỗi ô nhỏ này. Những đường bao 
có xác xuất cao sẽ được giữ lại và sử dụng cho nhiệm vụ xác định vị trí của đối tượng trong  ảnh. 
YOLO có nhiều phiên bản, trong đề tài “ Hệ thống đo chiều cao cho người sử dụng 
camer ” này nhóm sử dụng phiên bản YOLOv5 do Ultralytics phát triển từ năm 2020 là bản 
cập nhật mới nhất, kế thừa và cải tiến so với các đời YOLO trước. Với các ứng dụng như 
trong: giám sát an ninh, nhận dạng khuôn mặt, đếm và phân loại phương tiện, chẩn đoán hình  ảnh y tế,...      lOMoAR cPSD| 58933639
Phát hiện đối tượng (Object Detection):là quá trình xác định vị trí và phân loại các vật 
thể xuất hiện trong một bức ảnh hoặc video. Mỗi dự đoán bao gồm ba thành phần chính: 
khung giới hạn (bounding box) là hình chữ nhật bao quanh đối tượng, nhãn phân loại (class 
label) thể hiện loại đối tượng như người, xe hơi, chó…, và độ tin cậy (confidence score) cho 
biết mức độ chắc chắn của mô hình đối với dự đoán đó. Kỹ thuật này phù hợp với các ứng 
dụng mà mục tiêu là nhận diện “có gì” và “ở đâu” trong ảnh, mà không cần chi tiết chính 
xác về hình dáng hoặc góc nhìn của vật thể. 
Ưu điểm chính của YOLOv5 là:  
- Tăng tốc độ: Nhanh hơn và hiệu quả hơn trong việc phát hiện đối tượng so với các  phiên bản trước. 
- Độ chính xác: Cải thiện đáng kể về mAP (mean Average Precision) so với YOLOv4 
và các bản tiền nhiệm. 
- Phân loại đa lớp: Có thể nhận diện và phân loại đồng thời nhiều đối tượng khác nhau 
trong cùng một khung hình. 
- Độ linh hoạt: Triển khai đơn giản trên đa nền tảng (Windows, Linux, macOS) và 
nhiều loại thiết bị (GPU, CPU, NPU). 
- Giao diện sử dụng đơn giản: Cung cấp bộ script đồng nhất, dễ cài đặt và chạy, phù 
hợp với cả người mới bắt đầu. 
Quy trình xử lý ảnh trong YOLOv5: 
- Bước tiền xử lý: Ảnh đầu vào được đọc, áp dụng Letterbox để giữ tỷ lệ, sau đó resize 
về kích thước chuẩn và chuẩn hóa pixel. 
- Bước trích xuất đặc trưng: Mạng backbone CSP-Darknet tạo ra các bản đồ đặc trưng  ở nhiều cấp độ. 
- Bước kết hợp đặc trưng: PANet kết hợp các đặc trưng từ nhiều tầng nhằm tăng khả 
năng phát hiện đối tượng, đặc biệt là các vật thể nhỏ. 
- Bước dự đoán: Phần Head thực hiện dự đoán bounding box, nhãn lớp và độ tin cậy  cho mỗi vùng trên ảnh. 
- Bước hậu xử lý: Áp dụng Non-Maximum Suppression để loại bỏ các dự đoán trùng 
lặp, chỉ giữ lại kết quả chính xác nhất. 
YOLOv5 là mô hình one-stage dự đoán bounding box và nhãn lớp chỉ trong một bước. 
Ưu điểm là nhanh cân bằng tốt giữa tốc độ và độ chính xác, phù hợp với các ứng dụng thời  gian thực. 
Yolov5 có 5 cấu trúc mạng chính:  Model  Version  Latency    T4 COCO mAP 50-95  TensorRT10  FP16(ms/img)  YOLOv5  N  1.12    28  YOLOv5  S  1.92    37.4      lOMoAR cPSD| 58933639 YOLOv5  M  4.03    45.4  YOLOv5  L  6.61    49  YOLOv5  X  11.89    50.7 
Bảng 1. Version của Yolov5 
Lý do nhóm lựa chọn verson Yolov5m là: 
- Chạy nhanh (Latency thấp) 
- Tốn ít tài nguyên (Ram/GPU) 
- Phù hợp với thời gian thực (do kết nối với IP Webcam) 
2.3. Thư viện OpenCV   
Hình 3. Thư viện OpenCV 
OpenCV (Open Source Computer Vision Library) là một thư viện mã nguồn mở được 
phát triển dành riêng cho các ứng dụng xử lý ảnh và thị giác máy tính. Thư viện này cung 
cấp một tập hợp đa dạng các công cụ và thuật toán phục vụ cho việc phân tích ảnh, xử lý 
video từ nhận dạng vật thể, khuôn mặt cho đến theo dõi chuyển động trong khung hình. 
OpenCV nổi bật nhờ khả năng phân tích hình ảnh mạnh mẽ, được ứng dụng rộng rãi 
trong các lĩnh vực như robot, thị giác máy tính và phương tiện tự hành. Thư viện hỗ trợ đa 
nền tảng và đa ngôn ngữ, bao gồm C++, Python, Java và MATLAB, giúp lập trình viên dễ 
dàng tích hợp vào các dự án với môi trường phát triển phù hợp. 
Các tính năng chính của OpenCV bao gồm: xử lý ảnh cơ bản, phát hiện cạnh và đường 
viền, thực hiện các phép biến đổi hình học như xoay, thay đổi kích thước ảnh. Thư viện còn 
cho phép truy xuất video và tương tác với camera trong thời gian thực. Ngoài ra, nó còn hỗ 
trợ các chức năng như nhận diện khuôn mặt, chuyển đổi không gian màu, phân tích màu sắc, 
phát hiện và theo dõi điểm đặc trưng, xử lý ảnh nâng cao bằng histogram hoặc các bộ lọc 
hình thái học. Một điểm mạnh nữa của OpenCV là khả năng tích hợp với các mô hình học 
sâu và học máy, giúp mở rộng ứng dụng trong các hệ thống thông minh. Thư viện hoạt động 
ổn định trên nhiều hệ điều hành như Windows, Linux, macOS, cũng như các nền tảng di  động như Android và iOS. 
2.4. Thư viện PyTorch 
PyTorch là một thư viện mã nguồn mở dành cho học máy, được phát triển trên nền 
tảng Python. Thư viện này được sử dụng rộng rãi trong việc xây dựng và triển khai các mô      lOMoAR cPSD| 58933639
hình học sâu, đặc biệt trong các lĩnh vực như nhận diện hình ảnh và xử lý ngôn ngữ tự nhiên. 
Nhờ cấu trúc linh hoạt, dễ sử dụng và khả năng tương tác cao, PyTorch cho phép các nhà 
nghiên cứu và kỹ sư nhanh chóng thử nghiệm, thiết kế và triển khai các mô hình phức tạp. 
Thư viện được phát triển bởi nhóm Facebook AI Research (FAIR) và đã nhanh chóng trở 
thành một trong những công cụ quan trọng trong cộng đồng trí tuệ nhân tạo.   
Hình 4. Thư viện PyTorch 
Các tính năng chính của PyTorch như: biểu đồ tính toán động (Dynamic 
Computational Graph), tự động tính đạo hàm (Autograd), thư viện mạng nơ-ron mạnh mẽ 
(torch.n), hỗ trợ GPU và CUDA, Tensor linh hoạt, tương thích NumPy; Thư viện mở rộng: 
torchvision, torchaudio, torchtext, Hỗ trợ triển khai: TorchScript, ONNX, Huấn luyện phân 
tán (Distributed Training), Tích hợp công cụ trực quan hóa, Thân thiện với nghiên cứu và  phát triển. 
Một trong những đặc điểm nổi bật của PyTorch là khả năng hỗ trợ biểu đồ tính toán 
động (Dynamic Computational Graph), cho phép người dùng thay đổi cấu trúc mạng nơron 
ngay trong quá trình thực thi. Điều này mang lại sự linh hoạt hơn hẳn so với các framework 
sử dụng đồ thị tĩnh như TensorFlow (trong các phiên bản cũ). Thông qua việc tích hợp các 
tính năng mạnh mẽ, ưu việt này, PyTorch đã trở thành một công cụ hỗ trợ hiệu quả, giúp 
người dùng xây dựng và áp dụng thành công các mô hình học máy, học sâu vào nhiều lĩnh 
vực ứng dụng khác nhau, từ nghiên cứu khoa học nền tảng đến các giải pháp công nghiệp  thực tế.      lOMoAR cPSD| 58933639
Chương 3. XÂY DỰNG HỆ THỐNG 
3.1. Lưu đồ giải thuật   
Hình 5. Lưu đồ giải thuật của hệ thống 
3.2. Quy trình hoạt động 
Bước 1: Hệ thống bắt đầu kết nối tới camera điện thoại Android thông qua địa chỉ IP 
Webcam. Sau đó, hệ thống xoay khung hình cho đúng hướng hiển thị và áp dụng hiệu chỉnh 
méo ảnh bằng các thông số nội tại từ tập tin hiệu chỉnh camera. Quá trình này giúp đảm bảo 
chất lượng ảnh đầu vào ổn định và chính xác trước khi đưa vào phân tích. 
Bước 2: Sau đó hệ thống sử dụng mô hình học sâu YOLOv5m để phát hiện các đối 
tượng trong ảnh. Trong mỗi khung hình, YOLOv5 xác định và trả về thông tin bao gồm 
bounding box, label là "person" (người) và "bottle" (chai nước), cùng với độ tin cậy. Hệ 
thống ưu tiên xử lý khi phát hiện được cả người và chai nước, vì chai nước được dùng làm 
đối tượng tham chiếu chiều cao. 
Bước 3: Khi trong khung hình có cả người và chai nước hệ thống tính chiều cao người 
dựa trên tỉ lệ chiều cao pixel giữa hai đối tượng, chiều cao thật của chai nước đã biết trước 
(21 cm) như sử dụng công thức: 
chiềucaongười (cm)=chiềucaongười(pixel)×21(cm) (1) 
chiềucaochai(pixel)      lOMoAR cPSD| 58933639
Để giảm nhiễu do thay đổi nhỏ giữa các khung hình, hệ thống sử dụng một bộ đệm 
trượt để làm mượt giá trị chiều cao, chỉ cập nhật khi sự thay đổi vượt quá một ngưỡng nhất  định. 
Bước 4: Sau khi tính toán chiều cao, hệ thống sẽ hiển thị bounding box xung quanh 
người và chai nước, ghi nhãn chiều cao ước tính ngay trên khung hình, hiển thị ảnh đầu ra 
theo thời gian thực để người dùng dễ quan sát. Cứ 10 giây, nếu có đầy đủ dữ liệu phát hiện, 
hệ thống tự động lưu lại khung hình chứa kết quả đo chiều cao vào thư mục. 
3.3. Chương trình Python  import cv2 import  numpy as np  import torch import  os import time  from collections import deque 
data = np.load("camera_calib_data.npz") 
cameraMatrix = data['cameraMatrix'] 
distCoeffs = data['distCoeffs'] 
model = torch.hub.load('ultralytics/yolov5', 'yolov5m') 
# Kết nối webcam từ Android url = 
"http://192.168.1.71:8080/video" cap  = cv2.VideoCapture(url)  bottle_height_cm = 21 
height_buffer = deque(maxlen=5)  smoothed_height = 0 
min_delta = 1.0 # Ngưỡng thay đổi  last_saved_time = 0        lOMoAR cPSD| 58933639 interval = 10  while True: ret, frame  = cap.read() if not ret:  break 
 frame = cv2.rotate(frame, cv2.ROTATE_90_CLOCKWISE)  h, w = frame.shape[:2] 
 new_mtx, _ = cv2.getOptimalNewCameraMatrix(cameraMatrix, distCoeffs, (w, h), 1,  (w, h)) 
 frame_undistort = cv2.undistort(frame, cameraMatrix, distCoeffs, None, new_mtx)   results =  model(frame_undistort)  person_box = None bottle_box  = None   for det in results.xyxy[0]:   x1, y1, x2, y2, conf, cls =  det cls = int(cls) if cls  == 0: # person 
 person_box = (int(x1), int(y1), int(x2), int(y2))  elif cls == 39: # bottle 
 bottle_box = (int(x1), int(y1), int(x2), int(y2)) 
 if person_box and bottle_box: 
 _, y1_person, _, y2_person = person_box 
_, y1_bottle, _, y2_bottle = bottle_box 
 h_px_person = y2_person - y1_person 
h_px_bottle = y2_bottle - y1_bottle      lOMoAR cPSD| 58933639       lOMoAR cPSD| 58933639
 raw_height_cm = h_px_person * bottle_height_cm / h_px_bottle   
 if abs(raw_height_cm - smoothed_height) > min_delta: 
 height_buffer.append(raw_height_cm) 
 smoothed_height = sum(height_buffer) / len(height_buffer) 
 cv2.rectangle(frame_undistort, person_box[:2], person_box[2:], (0, 255, 0), 2) 
cv2.rectangle(frame_undistort, bottle_box[:2], bottle_box[2:], (255, 0, 0), 2) 
cv2.putText(frame_undistort, f"Height: {smoothed_height:.1f} cm", 
 (person_box[0], person_box[1] - 10), 
 cv2.FONT_HERSHEY_SIMPLEX, 0.7, (0, 0, 255), 2) 
 current_time = time.time() if current_time 
- last_saved_time >= interval:   output_dir = "KQ_DO" 
 os.makedirs(output_dir, exist_ok=True) 
 existing = [f for f in os.listdir(output_dir) if f.startswith("Height_2m_") and  f.endswith(".jpg")]   index = len(existing) + 1 
 result_path = os.path.join(output_dir, f"Height_2m_{index}.jpg") 
cv2.imwrite(result_path, frame_undistort) print(f"Đã lưu: 
{result_path}") last_saved_time = current_time 
 resized = cv2.resize(frame_undistort, (0, 0), fx=0.5, 
fy=0.5) cv2.imshow("Chiều cao khi đo", resized) if 
cv2.waitKey(1) == 27: # Nhấn ESC để thoát break  cap.release()      lOMoAR cPSD| 58933639 cv2.destroyAllWindows() 
Chương 4. KẾT QUẢ 
Hình ảnh kết quả đạt được:   
Hình 6. Hình ảnh đo thực tế        lOMoAR cPSD| 58933639
Hình 7. Hình ảnh kết quả đạt được        lOMoAR cPSD| 58933639
Chương 5. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN  5.1. Đánh giá 
Sau khi vận hành hệ thống ta thấy hệ thống có khả năng phát hiện người trong video 
một cách nhanh chóng và chính xác 100% và phát hiện chính xác 100% vật mẫu (chai nước). 
Với chiều cao hệ thống sử dụng mối quan hệ tuyến tính giữa chiều cao pixel trong video và 
chiều cao thực tế (theo công thức hiệu chỉnh) để ước lượng chiều cao người. Giao diện trực 
quan có hộp phát hiện người, khung bao quanh vật thể với màu khác nhau và chiều cao được 
hiển thị trực tiếp trên video, giúp người dùng dễ dàng quan sát và hiểu kết quả. 
Với khoảng cách từ 200cm-400cm thực nghiệm có các kết quả sau: 
Khoảng cách 400cm chiều cao dao động từ 163cm-173cm sai số lớn 
Khoảng cách 300cm chiều cao dao động từ 173cm-185cm sai số lớn 
Khoảng cách 240cm chiều cao dao động từ 177cm-183cm sai số ít 
Khoảng cách 400cm chiều cao dao động từ 179.6cm-180.7cm khá chính xác 
Khoảng cách 0-200cm góc quay không quay được chân nên khoảng cách tối thiểu phải  là 2m. 
Vậy với các kết quả thu được sau khi thực nghiệm nhóm chúng em rút ra được kết luận 
khoảng cách từ 200cm-240cm dùng cam điện thoại Android Samsung A3X đặt cam cao 
130cm so với đất thì chiều cao cho ra khá chuẩn so với thực tế. Nhược điểm là còn phải sài 
chai nước làm vật mốc để đo chưa có loại bỏ hoàn toàn. 
Tuy nhiên độ chính xác còn phụ thuộc vào tư thế người đo, vị trí và góc quay camera, 
nếu người đứng nghiêng, cúi đầu, hoặc camera không được đặt cố định về độ cao và góc 
nhìn (vuông góc) thì chiều cao tính toán có thể sai lệch. Ngoài ra, khi có nhiều người trong 
khung hình, hệ thống chưa phân biệt chọn được ai là đối tượng chính cần để đo. Chất lượng 
mạng và ánh sáng cũng ảnh hưởng đến kết quả và công thức quy đổi chỉ áp dụng chính xác 
khi điều kiện chụp (khoảng cách, tiêu cự, độ phân giải) cố định, với mỗi loại camera hoặc 
khoảng cách khác, cần hiệu chuẩn lại.  5.2. Kết luận 
Sau quá trình nghiên cứu, xây dựng và thực hiện thì hệ thống đo chiều cao tự 
động cho người sử dụng camera đã được triển khai thành công với các mục tiêu cơ 
bản đặt ra. Hệ thống có khả năng thực hiện các chức năng phát hiện và đo chiều cao 
người tự động, kết quả đo có sai số nhỏ trong điều kiện tiêu chuẩn, sử dụng xử lý ảnh 
giúp loại bỏ sự phụ thuộc vào thiết bị đo truyền thống. 
Tóm lại, đề tài “HỆ THỐNG ĐO CHIỀU CAO CHO NGƯỜI SỬ DỤNG 
CAMERA“ đã hoàn thành tốt những yêu cầu đặt ra, cung cấp những giải pháp có tính 
ứng dụng cao và mở ra những hướng nghiên cứu mới trong lĩnh vực xử lý ảnh. Sự 
thành công của đề tài đã góp phần khẳng định tính đúng đắn và hiệu quả của việc ứng 
dụng các giải pháp kỹ thuật hiện đại vào thực tiễn. 
5.3. Hướng phát triển 
- Tích hợp AI nâng cao độ chính xác và khả năng phân tích tư thế.      lOMoAR cPSD| 58933639
- Tích hợp thuật toán theo dõi đối tượng (object tracking) để xác định và theo dõi một 
người duy nhất trong khung hình, tránh đo nhầm khi có nhiều người xuất hiện đồng  thời. 
- Tích hợp thuật toán nhận dạng khuôn mặt để phân biệt người dùng, từ đó lưu trữ và 
theo dõi quá trình phát triển chiều cao theo từng cá nhân. - Tối ưu giao diện người 
dùng, hỗ trợ đa nền tảng (web/mobile). 
TÀI LIỆU THAM KHẢO 
[1].https://www.studocu.vn/vn/document/international-university-vnu-hcm/all-of-
thecourses/tong-quan-ve-yolo-v5-binh-thuong/50994507 
[2].https://viblo.asia/p/tong-hop-kien-thuc-tu-yolov1-den-yolov5-phan-3-63vKjgJ6Z2R 
https://docs.ultralytics.com/vi/yolov5 
[3].https://www.pandaml.com/object-detection-yolo/ 
[4].https://www.researchgate.net/publication/ 
381880387_Automatic_human_height_measurement_system_based_on_camera_sensor_w 
ith_deep-learning_and_linear_regression_analysis 
[5]. https://fptshop.com.vn/tin-tuc/danh-gia/opencv-la-gi-168801 
[6]. https://vnptai.io/vi/blog/detail/opencv-la-gi 
 [7]. https://www.nvidia.com/en-us/glossary/pytorch/ 
[8].https://tinhte.vn/thread/pytorch-la-gi-uu-nhuoc-diem-ung-dung-cua-pytorch.4003522/