Chuyển tới nội dung chính

Tạo yêu cầu CoreML Vision (coreml.new_vision_request)

coreml.new_vision_request tải một mô hình CoreML đã biên dịch và tạo yêu cầu suy luận dựa trên Vision để nhận dạng ảnh.
Sử dụng khi mô hình nhận trực tiếp một ảnh và bạn muốn Vision xử lý quy trình yêu cầu.

Khai báo

vnreq, err = coreml.new_vision_request(compiled_model_path)

hoặc

vnreq, err = coreml.new_vision_request({
compiled_model_path = compiled_model_path,
uses_cpu_only = use_cpu_only,
compute_units = compute_units,
image_crop_and_scale_option = crop_and_scale_mode,
})

Tham số

  • compiled_model_path
    Kiểu chuỗi. Đường dẫn đến thư mục mô hình .mlmodelc đã biên dịch. API này chủ yếu dành cho mô hình phân loại ảnh và phát hiện đối tượng.

  • uses_cpu_only
    Kiểu boolean, không bắt buộc. Theo mặc định có chỉ sử dụng CPU hay không. Mặc định là false.

  • compute_units Kiểu chuỗi, không bắt buộc. Có hiệu lực trên iOS 12 trở lên. Các giá trị được hỗ trợ:

    • "all"
    • "cpu_only" or "cpu"
    • "cpu_and_gpu" or "gpu"
    • "cpu_and_neural_engine", "ane", or "neural_engine" (iOS 16+)
  • image_crop_and_scale_option
    Kiểu số nguyên, không bắt buộc. Chế độ cắt và đổi tỷ lệ của Vision dùng khi chuẩn bị ảnh đầu vào.

Giá trị trả về

  • vnreq
    Đối tượng yêu cầu Vision, hoặc nil khi thất bại.
  • err
    Kiểu chuỗi. nil khi thành công; thông báo lỗi khi thất bại.

Lưu ý

  • Khả dụng từ phiên bản ứng dụng 1.3.8 trở lên.
  • Không hỗ trợ các phiên bản iOS thấp hơn 13.
  • Hàm này tạo yêu cầu suy luận Vision từ mô hình .mlmodelc đã biên dịch để nhận dạng dựa trên ảnh.
  • Sử dụng API này cho các mô hình ảnh dựa trên Vision.
  • Nếu mô hình cần đầu vào đặc trưng image / MLMultiArray đa dụng thay vì quy trình Vision, hãy cân nhắc dùng coreml.new_model_request.
  • Ngoài :predict() / :run(), đối tượng còn cung cấp các phương thức như :results(), :is_done(), :compute_units(), :image_crop_and_scale_option():class_labels()

Ví dụ

Xem Chạy suy luận ảnh bằng yêu cầu CoreML Vision