Skip to main content

AI-POWERED DOCS

What do you want to know?

Cropped ROI Endpoint (Chỉ dành cho Classification)

Tổng Quan

Endpoint cropped_roi cung cấp quyền truy cập vào các Regions of Interest (ROIs) đã cắt được tạo ra từ kết quả classification trong Haystack đang chạy trên thiết bị.

Chỉ dành cho Classification

Haystack hiện không hỗ trợ kết quả segmentation. Endpoint này chỉ hoạt động với các kết quả loại classification. Nếu bạn cần xử lý kết quả segmenter theo cách lập trình, hãy sử dụng API kết quả kiểm tra tiêu chuẩn để thay thế.

Định dạng Base URL là:

http://{device-ip}/edge/haystack/cropped_roi/{classification_result_id}

Cách Thức Hoạt Động

Khi camera hoàn tất classification capture, luồng Node-RED sẽ tự động xây dựng URL cho các hình ảnh ROI đã cắt bằng cách ghép nối IP thiết bị với ID của kết quả classification:

const imageUrl = `http://${baseUrl}/edge/haystack/cropped_roi/${result.id}`;

Mỗi URL cung cấp một hình ảnh đã cắt tương ứng với từng ROI classification riêng lẻ, thường đại diện cho một lần kiểm tra đơn lẻ.


Tóm Tắt Luồng Node-RED

Luồng ROI_Crop thực hiện các tác vụ sau:

  1. Trích xuất Device IP

    • Phân tích trường image_url để tìm IP (ví dụ: 192.168.0.101)
    • Lưu trữ toàn cục (globally) để tái sử dụng
  2. Truy vấn Dữ liệu Capture Mới nhất

    • Gửi GET request đến PostgREST API của thiết bị:

      http://{device-ip}/postgrest/captures?select=...
      &order=id.desc&limit=1
    • Lấy về capture gần đây nhất và tất cả các mục classification_result

  3. Chỉ Lọc Kết Quả Classification

    • Bỏ qua kết quả segmentation hoặc alignment

    • Duyệt qua từng kết quả classification:

      classificationResults.forEach(result => {
      const roiName = result.roi_result?.inspection_region?.name || `ROI_${result.id}`;
      const imageUrl = `http://${baseUrl}/edge/haystack/cropped_roi/${result.id}`;
      imageMap[roiName] = imageUrl;
      });
  4. Xuất ra các URL ROI đã Cắt

    • Lưu tất cả các đường dẫn hình ảnh ROI vào một imageMap toàn cục
    • Trả về danh sách các URL hình ảnh ROI đã cắt mới nhất

image1.png

image2.png


Ví Dụ Sử Dụng

Lấy Hình Ảnh ROI Đã Cắt

curl http://192.168.0.101/edge/haystack/cropped_roi/42 -o roi_42.jpg

Sử dụng trong Giao Diện Web

<img src="http://192.168.0.101/edge/haystack/cropped_roi/42" alt="Cropped ROI 42">

Ví Dụ Đầu Ra

{
"ROI_1": "http://192.168.0.101/edge/haystack/cropped_roi/1",
"ROI_2": "http://192.168.0.101/edge/haystack/cropped_roi/2"
}

Tham Số

Tham sốKiểuMô tả
device-ipstringĐịa chỉ IP của camera (ví dụ: 192.168.0.101)

Luồng Tích Hợp

  1. Thu thập metadata của capture mới nhất qua /postgrest/captures.
  2. Xác định các ID classification_result khả dụng.
  3. Xây dựng các URL ROI đã cắt cho từng kết quả.
  4. Hiển thị hoặc tải xuống các hình ảnh đó để phân tích, làm dữ liệu huấn luyện (training data), hoặc kiểm tra QA.

Tải Luồng Node-RED

  • ROI Crop Flow (JSON) - Luồng Node-RED hoàn chỉnh để trích xuất các hình ảnh ROI đã cắt
    • Import luồng này trực tiếp vào Node-RED để truy cập các ROI classification đã cắt
    • Hoạt động với cả hệ thống OV20i và OV80i