Runtime v2.81 · Cập nhật 30 thg 9, 2026

TfliteModel

Đối tượng model TFLite để dùng trong script.

Cú pháp

TfliteModel(model)

Tham số khởi tạo

TênMô tả
modelString
Tham chiếu model dùng để inference (ưu tiên tên model trong Template).
Bắt buộc · Theo vị trí hoặc tên
Không có giá trị mặc định

Giá trị trả về

TfliteModel

Hành vi / tác động

Đối tượng model TFLite để dùng trong script. Kiểu model phải được chọn trong metadata của Template Manager. Các đầu ra đang hỗ trợ gồm YOLOv8/YOLO11 object detection [1,N,4+C]/[1,4+C,N], YOLO26 end-to-end detection [1,N,6]/[N,6], YOLO11/YOLO26 image classification [1,C], và MobileNetV3 image classification [1,C]. Runtime tự đọc precision FLOAT32, INT8 hoặc UINT8 từ model và giải lượng tử output detection/classification trước khi áp dụng threshold. Kết quả classification trả confidence và metadata theo class, không dựng point hoặc bounds giả. Các hàm inference yêu cầu file model cục bộ; nếu thiếu file local và runtime tải lại thất bại thì script sẽ báo lỗi runtime.

Thực thi

  • Chờ hoàn tất: Tùy điều kiện
  • An toàn khi chạy đồng thời: Không bảo đảm
  • Chạy song song: Tùy điều kiện

Chi phí thực thi và thời gian chờ tùy thao tác được mô tả. Giữ giá trị có thể thay đổi trong luồng sở hữu; việc chia sẻ đối tượng tùy ý giữa các luồng không có bảo đảm an toàn chung.

Ví dụ

# Kiểm tra mô hình sẵn sàng trước khi chạy nhận diện
if TfliteModel.exists("enemy_model"):
    detector = TfliteModel("enemy_model")
    hits = detector.inference()
    if len(hits) > 0:
        click(hits[0])

Lỗi / giới hạn

Không có giới hạn bổ sung được ghi nhận; tuân thủ hợp đồng tham số và hành vi ở trên.

API liên quan

Không có

Thuộc tính

TênMô tả
modelString
Tham chiếu model trong macro hiện tại (ưu tiên tên model trong Template; vẫn hỗ trợ model id cũ).
resize_modeString
Chế độ resize preprocessing đã resolve: LETTERBOX, STRETCH, hoặc CROP_CENTER.
Mặc định: LETTERBOX
color_modeString
Chế độ màu preprocessing đã resolve: RGB, BGR, hoặc GRAYSCALE.
Mặc định: RGB
norm_modeString
Chuẩn hóa preprocessing đã resolve: ZERO_ONE, MINUS_ONE_ONE, IMAGENET, hoặc CUSTOM.
Mặc định: ZERO_ONE
padding_colorInt
Giá trị padding (0 -> 255) dùng cho chế độ LETTERBOX.
Mặc định: 114
Ví dụ khởi tạo
# Nhập mô hình TFLite được hỗ trợ và chọn loại đầu ra trong Template Manager.
# Tạo model handle gắn với một tên mô hình TFLite trong Template Manager.
model = TfliteModel("enemy_model")

Phương thức

4 phương thức

TfliteModel.exists

Kiểm tra file model TFLite cục bộ (resolve theo tên model hoặc id cũ) hiện có sẵn trong macro này hay không.

Cú pháp

TfliteModel.exists(model)

Tham số

TênMô tả
modelString
Tham chiếu model cần kiểm tra.
Bắt buộc · Theo vị trí hoặc tên
Không có giá trị mặc định

Giá trị trả về

Boolean — true nếu file model cục bộ đã sẵn sàng để dùng.

Hành vi / tác động

Kiểm tra file model TFLite cục bộ (resolve theo tên model hoặc id cũ) hiện có sẵn trong macro này hay không.

Thực thi

  • Chờ hoàn tất: Tùy điều kiện
  • An toàn khi chạy đồng thời: Không bảo đảm
  • Chạy song song: Tùy điều kiện

Chi phí thực thi và thời gian chờ tùy thao tác được mô tả. Giữ giá trị có thể thay đổi trong luồng sở hữu; việc chia sẻ đối tượng tùy ý giữa các luồng không có bảo đảm an toàn chung.

Ví dụ

# Kiểm tra mô hình đã nhập trong Trình quản lý mẫu
if TfliteModel.exists("enemy_detector"):
    print("Model available")

Lỗi / giới hạn

Không có giới hạn bổ sung được ghi nhận; tuân thủ hợp đồng tham số và hành vi ở trên.

API liên quan

TfliteModel.list

Liệt kê các tham chiếu model cục bộ hiện có cho macro (ưu tiên tên hiển thị).

Cú pháp

TfliteModel.list()

Tham số

Không có

Giá trị trả về

list[String] — Danh sách tham chiếu model.

Hành vi / tác động

Liệt kê các tham chiếu model cục bộ hiện có cho macro (ưu tiên tên hiển thị).

Thực thi

  • Chờ hoàn tất: Tùy điều kiện
  • An toàn khi chạy đồng thời: Không bảo đảm
  • Chạy song song: Tùy điều kiện

Chi phí thực thi và thời gian chờ tùy thao tác được mô tả. Giữ giá trị có thể thay đổi trong luồng sở hữu; việc chia sẻ đối tượng tùy ý giữa các luồng không có bảo đảm an toàn chung.

Ví dụ

# Liệt kê các mô hình macro này có thể dùng
print(TfliteModel.list())

Lỗi / giới hạn

Không có giới hạn bổ sung được ghi nhận; tuân thủ hợp đồng tham số và hành vi ở trên.

API liên quan

TfliteModel.exists

Kiểm tra file model cục bộ của detector hiện tại có sẵn hay không.

Cú pháp

model.exists()

Tham số

Không có

Giá trị trả về

Boolean — true nếu file model cục bộ có thể dùng ngay.

Hành vi / tác động

Kiểm tra file model cục bộ của detector hiện tại có sẵn hay không.

Thực thi

  • Chờ hoàn tất: Tùy điều kiện
  • An toàn khi chạy đồng thời: Không bảo đảm
  • Chạy song song: Tùy điều kiện

Chi phí thực thi và thời gian chờ tùy thao tác được mô tả. Giữ giá trị có thể thay đổi trong luồng sở hữu; việc chia sẻ đối tượng tùy ý giữa các luồng không có bảo đảm an toàn chung.

Ví dụ

# Chỉ tạo đối tượng sau khi xác nhận mô hình đã nhập tồn tại
if TfliteModel.exists("enemy_detector"):
    model = TfliteModel("enemy_detector")
    print(model.exists())

Lỗi / giới hạn

Không có giới hạn bổ sung được ghi nhận; tuân thủ hợp đồng tham số và hành vi ở trên.

API liên quan

TfliteModel.inference

Chạy model TFLite đã chọn mà không lọc theo class và trả về toàn bộ match.

Cú pháp

model.inference(threshold=0.5, region=None, max_results=8, debug=False)

Tham số

TênMô tả
thresholdNumber
Ngưỡng confidence trong 0 -> 1.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: 0.5
regionRegion?
Vùng màn hình tùy chọn. Ảnh trong vùng này được cắt trước khi preprocessing và inference; độ chính xác có thể giảm nếu model không được train trên các ảnh đã cắt tương tự.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: None
max_resultsInt
Số lượng detection tối đa được trả về.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: 8
debugBoolean
Trong chế độ Chỉnh sửa, true sẽ lưu ảnh preview sau preprocess và mở dialog debug runtime. Chế độ Run-only bỏ qua đầu ra debug và vẫn inference bình thường mà không mở dialog. Các dòng kết quả model chi tiết và config preprocess chỉ nằm trong dialog; Match trả về không chứa debug_result. Preview detection có vẽ bbox/class label; preview classification hiển thị ảnh đầu vào sau preprocess cùng điểm số class.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: False

Giá trị trả về

MatchList — Danh sách match inference trên tất cả class.

Hành vi / tác động

Chạy model TFLite đã chọn mà không lọc theo class và trả về toàn bộ match. Khi truyền region, ảnh màn hình trong vùng đó được cắt trước khi preprocessing và inference; độ chính xác có thể giảm nếu model không được train trên các ảnh đã cắt tương tự. Match classification không có point hoặc bounds.

Thực thi

  • Chờ hoàn tất: Tùy điều kiện
  • An toàn khi chạy đồng thời: Không bảo đảm
  • Chạy song song: Tùy điều kiện

Chi phí thực thi và thời gian chờ tùy thao tác được mô tả. Giữ giá trị có thể thay đổi trong luồng sở hữu; việc chia sẻ đối tượng tùy ý giữa các luồng không có bảo đảm an toàn chung.

Ví dụ

# Chạy inference thô của mô hình và xem debug preprocess
detector = TfliteModel("enemy_model")
search = Region(100, 200, 300, 400)
hits = detector.inference(threshold=0.55, region=search, max_results=12, debug=True)
text(str(len(hits)))

Lỗi / giới hạn

Không có giới hạn bổ sung được ghi nhận; tuân thủ hợp đồng tham số và hành vi ở trên.

API liên quan