Link to this sectionTrực quan hóa Dữ liệu Nâng cao: Heatmap sử dụng Ultralytics YOLO26 🚀#
Link to this sectionGiới thiệu về Heatmap#
Một heatmap được tạo bằng Ultralytics YOLO26 chuyển đổi dữ liệu phức tạp thành một ma trận được mã hóa màu sắc sinh động. Công cụ trực quan này sử dụng phổ màu để biểu thị các giá trị dữ liệu khác nhau, trong đó tông màu nóng biểu thị cường độ cao hơn và tông màu lạnh biểu thị các giá trị thấp hơn. Heatmap rất xuất sắc trong việc trực quan hóa các mô hình dữ liệu, mối tương quan và các điểm bất thường phức tạp, mang lại phương pháp tiếp cận dễ hiểu và lôi cuốn cho việc giải thích dữ liệu trên nhiều lĩnh vực.
Watch: Heatmaps using Ultralytics YOLO26
Link to this sectionTại sao nên chọn Heatmap để phân tích dữ liệu?#
- Trực quan hóa Phân phối Dữ liệu Trực quan: Heatmap đơn giản hóa việc hiểu về sự tập trung và phân phối dữ liệu, chuyển đổi các tập dữ liệu phức tạp thành các định dạng hình ảnh dễ hiểu.
- Phát hiện Mô hình Hiệu quả: Bằng cách trực quan hóa dữ liệu ở định dạng heatmap, việc nhận diện các xu hướng, cụm và giá trị ngoại lai trở nên dễ dàng hơn, giúp đẩy nhanh quá trình phân tích và thu thập thông tin chi tiết.
- Nâng cao Phân tích Không gian và Ra quyết định: Heatmap đóng vai trò quan trọng trong việc minh họa các mối quan hệ không gian, hỗ trợ quy trình ra quyết định trong các lĩnh vực như kinh doanh thông minh, nghiên cứu môi trường và quy hoạch đô thị.
Link to this sectionCác ứng dụng thực tế#
| Giao thông | Bán lẻ |
|---|---|
![]() | ![]() |
| Ultralytics YOLO26 Transportation Heatmap | Ultralytics YOLO26 Retail Heatmap |
# Run a heatmap example
yolo solutions heatmap show=True
# Pass a source video
yolo solutions heatmap source="path/to/video.mp4"
# Pass a custom colormap
yolo solutions heatmap colormap=cv2.COLORMAP_INFERNO
# Heatmaps + object counting
yolo solutions heatmap region="[(20, 400), (1080, 400), (1080, 360), (20, 360)]"Link to this sectionCác đối số của Heatmap()#
Dưới đây là bảng các đối số của Heatmap:
| Đối số | Loại | Mặc định | Mô tả |
|---|---|---|---|
model | str | None | Đường dẫn đến tệp model Ultralytics YOLO. |
colormap | int | cv2.COLORMAP_DEEPGREEN | Bản đồ màu (colormap) để sử dụng cho bản đồ nhiệt. |
show_in | bool | True | Cờ để kiểm soát việc hiển thị số lượng đếm vào trên luồng video. |
show_out | bool | True | Cờ để kiểm soát việc hiển thị số lượng đếm ra trên luồng video. |
region | list | '[(20, 400), (1260, 400)]' | Danh sách các điểm xác định vùng đếm. |
Bạn cũng có thể áp dụng các đối số track khác nhau trong giải pháp Heatmap.
| Đối số | Loại | Mặc định | Mô tả |
|---|---|---|---|
tracker | str | 'botsort.yaml' | Chỉ định thuật toán tracking cần sử dụng. Các tùy chọn tích hợp sẵn: botsort.yaml, bytetrack.yaml, ocsort.yaml, deepocsort.yaml, fasttrack.yaml, tracktrack.yaml. |
conf | float | 0.1 | Thiết lập ngưỡng tin cậy cho các phát hiện; các giá trị thấp hơn cho phép nhiều đối tượng được theo dõi hơn nhưng có thể bao gồm các kết quả dương tính giả. |
iou | float | 0.7 | Thiết lập ngưỡng Intersection over Union (IoU) để lọc các phát hiện chồng lấp. |
classes | list | None | Lọc kết quả theo chỉ số lớp. Ví dụ, classes=[0, 2, 3] chỉ theo dõi các lớp đã chỉ định. |
verbose | bool | True | Kiểm soát việc hiển thị kết quả theo dõi, cung cấp đầu ra trực quan của các đối tượng được theo dõi. |
device | str | None | Chỉ định thiết bị để thực hiện suy luận (ví dụ: cpu, cuda:0 hoặc 0). Cho phép người dùng chọn giữa CPU, một GPU cụ thể, hoặc các thiết bị tính toán khác để thực thi model. |
Ngoài ra, các đối số trực quan hóa được hỗ trợ được liệt kê dưới đây:
| Đối số | Loại | Mặc định | Mô tả |
|---|---|---|---|
show | bool | False | Nếu True, hiển thị các hình ảnh hoặc video đã được chú thích trong một cửa sổ. Hữu ích cho phản hồi trực quan ngay lập tức trong quá trình phát triển hoặc kiểm thử. |
line_width | int or None | None | Chỉ định độ dày đường của bounding box. Nếu None, độ dày đường được tự động điều chỉnh dựa trên kích thước hình ảnh. Cung cấp khả năng tùy chỉnh trực quan để rõ ràng hơn. |
show_conf | bool | True | Hiển thị điểm số tin cậy (confidence score) cho mỗi phát hiện cùng với nhãn. Cung cấp thông tin chi tiết về độ chắc chắn của model đối với từng phát hiện. |
show_labels | bool | True | Hiển thị nhãn cho mỗi phát hiện trong đầu ra hình ảnh. Cung cấp khả năng nhận biết tức thì các đối tượng được phát hiện. |
Link to this sectionCác COLORMAP của Heatmap#
| Tên Colormap | Mô tả |
|---|---|
cv::COLORMAP_AUTUMN | Bản đồ màu Autumn |
cv::COLORMAP_BONE | Bản đồ màu Bone |
cv::COLORMAP_JET | Bản đồ màu Jet |
cv::COLORMAP_WINTER | Bản đồ màu Winter |
cv::COLORMAP_RAINBOW | Bản đồ màu Rainbow |
cv::COLORMAP_OCEAN | Bản đồ màu Ocean |
cv::COLORMAP_SUMMER | Bản đồ màu Summer |
cv::COLORMAP_SPRING | Bản đồ màu Spring |
cv::COLORMAP_COOL | Bản đồ màu Cool |
cv::COLORMAP_HSV | Bản đồ màu HSV (Hue, Saturation, Value) |
cv::COLORMAP_PINK | Bản đồ màu Pink |
cv::COLORMAP_HOT | Bản đồ màu Hot |
cv::COLORMAP_PARULA | Bản đồ màu Parula |
cv::COLORMAP_MAGMA | Bản đồ màu Magma |
cv::COLORMAP_INFERNO | Bản đồ màu Inferno |
cv::COLORMAP_PLASMA | Bản đồ màu Plasma |
cv::COLORMAP_VIRIDIS | Bản đồ màu Viridis |
cv::COLORMAP_CIVIDIS | Bản đồ màu Cividis |
cv::COLORMAP_TWILIGHT | Bản đồ màu Twilight |
cv::COLORMAP_TWILIGHT_SHIFTED | Bản đồ màu Twilight Shifted |
cv::COLORMAP_TURBO | Bản đồ màu Turbo |
cv::COLORMAP_DEEPGREEN | Bản đồ màu Deep Green |
Các colormap này thường được sử dụng để trực quan hóa dữ liệu với các biểu diễn màu sắc khác nhau.
Link to this sectionHeatmap hoạt động như thế nào trong Ultralytics YOLO26#
Giải pháp Heatmap trong Ultralytics YOLO26 mở rộng lớp ObjectCounter để tạo và trực quan hóa các mô hình di chuyển trong luồng video. Khi khởi tạo, giải pháp tạo ra một lớp heatmap trống được cập nhật khi các đối tượng di chuyển qua khung hình.
Đối với mỗi đối tượng được phát hiện, giải pháp:
- Theo dõi đối tượng qua các khung hình bằng khả năng theo dõi của YOLO26
- Cập nhật cường độ heatmap tại vị trí của đối tượng
- Áp dụng colormap đã chọn để trực quan hóa các giá trị cường độ
- Phủ heatmap màu lên khung hình gốc
Kết quả là một hình ảnh trực quan động được xây dựng theo thời gian, tiết lộ các kiểu hình giao thông, chuyển động của đám đông hoặc các hành vi không gian khác trong dữ liệu video của bạn.
Link to this sectionCâu hỏi thường gặp#
Link to this sectionUltralytics YOLO26 tạo heatmap như thế nào và lợi ích của chúng là gì?#
Ultralytics YOLO26 tạo heatmap bằng cách chuyển đổi dữ liệu phức tạp thành một ma trận được mã hóa màu sắc, trong đó các tông màu khác nhau đại diện cho cường độ dữ liệu. Heatmap giúp dễ dàng trực quan hóa các mô hình, mối tương quan và các điểm bất thường trong dữ liệu. Tông màu nóng biểu thị giá trị cao hơn, trong khi tông màu lạnh biểu thị các giá trị thấp hơn. Các lợi ích chính bao gồm trực quan hóa phân phối dữ liệu trực quan, phát hiện mô hình hiệu quả và phân tích không gian nâng cao để ra quyết định. Để biết thêm chi tiết và các tùy chọn cấu hình, hãy tham khảo phần Cấu hình Heatmap.
Link to this sectionTôi có thể sử dụng Ultralytics YOLO26 để thực hiện theo dõi đối tượng và tạo heatmap đồng thời không?#
Có, Ultralytics YOLO26 hỗ trợ đồng thời việc theo dõi đối tượng và tạo heatmap. Điều này có thể đạt được thông qua giải pháp Heatmap tích hợp với các mô hình theo dõi đối tượng. Để làm điều đó, bạn cần khởi tạo đối tượng heatmap và sử dụng khả năng theo dõi của YOLO26. Dưới đây là một ví dụ đơn giản:
import cv2
from ultralytics import solutions
cap = cv2.VideoCapture("path/to/video.mp4")
heatmap = solutions.Heatmap(colormap=cv2.COLORMAP_PARULA, show=True, model="yolo26n.pt")
while cap.isOpened():
success, im0 = cap.read()
if not success:
break
results = heatmap(im0)
cap.release()
cv2.destroyAllWindows()Để được hướng dẫn thêm, hãy kiểm tra trang Chế độ Theo dõi.
Link to this sectionĐiều gì làm cho các heatmap của Ultralytics YOLO26 khác biệt so với các công cụ trực quan hóa dữ liệu khác như OpenCV hoặc Matplotlib?#
Các heatmap của Ultralytics YOLO26 được thiết kế đặc biệt để tích hợp với các mô hình phát hiện đối tượng và theo dõi của nó, cung cấp một giải pháp toàn diện cho phân tích dữ liệu thời gian thực. Không giống như các công cụ trực quan hóa chung như OpenCV hoặc Matplotlib, heatmap của YOLO26 được tối ưu hóa cho hiệu suất và xử lý tự động, hỗ trợ các tính năng như theo dõi liên tục, điều chỉnh hệ số suy giảm và phủ video thời gian thực. Để biết thêm thông tin về các tính năng độc đáo của YOLO26, hãy truy cập Giới thiệu về Ultralytics YOLO26.
Link to this sectionLàm thế nào tôi có thể chỉ trực quan hóa các lớp đối tượng cụ thể trong heatmap bằng Ultralytics YOLO26?#
Bạn có thể trực quan hóa các lớp đối tượng cụ thể bằng cách chỉ định các lớp mong muốn trong phương thức track() của mô hình YOLO. Ví dụ, nếu bạn chỉ muốn trực quan hóa ô tô và con người (giả sử chỉ số lớp của chúng là 0 và 2), bạn có thể đặt tham số classes tương ứng.
import cv2
from ultralytics import solutions
cap = cv2.VideoCapture("path/to/video.mp4")
heatmap = solutions.Heatmap(show=True, model="yolo26n.pt", classes=[0, 2])
while cap.isOpened():
success, im0 = cap.read()
if not success:
break
results = heatmap(im0)
cap.release()
cv2.destroyAllWindows()Link to this sectionTại sao các doanh nghiệp nên chọn Ultralytics YOLO26 để tạo heatmap trong phân tích dữ liệu?#
Ultralytics YOLO26 cung cấp khả năng tích hợp liền mạch giữa phát hiện đối tượng nâng cao và tạo heatmap thời gian thực, trở thành lựa chọn lý tưởng cho các doanh nghiệp đang tìm cách trực quan hóa dữ liệu hiệu quả hơn. Các lợi thế chính bao gồm trực quan hóa phân phối dữ liệu trực quan, phát hiện mô hình hiệu quả và phân tích không gian nâng cao để ra quyết định tốt hơn. Ngoài ra, các tính năng tiên tiến của YOLO26 như theo dõi liên tục, colormap có thể tùy chỉnh và hỗ trợ nhiều định dạng xuất khác nhau làm cho nó vượt trội hơn so với các công cụ khác như TensorFlow và OpenCV để phân tích dữ liệu toàn diện. Tìm hiểu thêm về các ứng dụng kinh doanh tại Các gói dịch vụ Ultralytics.

