Meet YOLO26: next-gen vision AI.

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#

Open Heatmaps In Colab

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ôngBán lẻ
Ultralytics YOLO26 Transportation HeatmapUltralytics YOLO26 Retail Heatmap
Ultralytics YOLO26 Transportation HeatmapUltralytics YOLO26 Retail Heatmap
Heatmap sử dụng Ultralytics YOLO
# 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ạiMặc địnhMô tả
modelstrNoneĐường dẫn đến tệp model Ultralytics YOLO.
colormapintcv2.COLORMAP_DEEPGREENBản đồ màu (colormap) để sử dụng cho bản đồ nhiệt.
show_inboolTrueCờ để kiểm soát việc hiển thị số lượng đếm vào trên luồng video.
show_outboolTrueCờ để kiểm soát việc hiển thị số lượng đếm ra trên luồng video.
regionlist'[(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ạiMặc địnhMô tả
trackerstr'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.
conffloat0.1Thiế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ả.
ioufloat0.7Thiết lập ngưỡng Intersection over Union (IoU) để lọc các phát hiện chồng lấp.
classeslistNoneLọ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.
verboseboolTrueKiể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.
devicestrNoneChỉ đị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ạiMặc địnhMô tả
showboolFalseNế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_widthint or NoneNoneChỉ đị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_confboolTrueHiể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_labelsboolTrueHiể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 ColormapMô tả
cv::COLORMAP_AUTUMNBản đồ màu Autumn
cv::COLORMAP_BONEBản đồ màu Bone
cv::COLORMAP_JETBản đồ màu Jet
cv::COLORMAP_WINTERBản đồ màu Winter
cv::COLORMAP_RAINBOWBản đồ màu Rainbow
cv::COLORMAP_OCEANBản đồ màu Ocean
cv::COLORMAP_SUMMERBản đồ màu Summer
cv::COLORMAP_SPRINGBản đồ màu Spring
cv::COLORMAP_COOLBản đồ màu Cool
cv::COLORMAP_HSVBản đồ màu HSV (Hue, Saturation, Value)
cv::COLORMAP_PINKBản đồ màu Pink
cv::COLORMAP_HOTBản đồ màu Hot
cv::COLORMAP_PARULABản đồ màu Parula
cv::COLORMAP_MAGMABản đồ màu Magma
cv::COLORMAP_INFERNOBản đồ màu Inferno
cv::COLORMAP_PLASMABản đồ màu Plasma
cv::COLORMAP_VIRIDISBản đồ màu Viridis
cv::COLORMAP_CIVIDISBản đồ màu Cividis
cv::COLORMAP_TWILIGHTBản đồ màu Twilight
cv::COLORMAP_TWILIGHT_SHIFTEDBản đồ màu Twilight Shifted
cv::COLORMAP_TURBOBản đồ màu Turbo
cv::COLORMAP_DEEPGREENBả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:

  1. Theo dõi đối tượng qua các khung hình bằng khả năng theo dõi của YOLO26
  2. Cập nhật cường độ heatmap tại vị trí của đối tượng
  3. Áp dụng colormap đã chọn để trực quan hóa các giá trị cường độ
  4. 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.

Bình luận