Thực hiện phát hiện đối tượng trên hình ảnh.
API yêu cầu mô hình TFLite với Siêu dữ liệu mô hình TFLite. .
API hỗ trợ các mô hình có một tensor đầu vào hình ảnh và bốn tensor đầu ra. Để cụ thể hơn, đây là các yêu cầu.
- Tenor hình ảnh đầu vào (
kTfLiteUInt8
/kTfLiteFloat32
)- hình ảnh đầu vào có kích thước
[batch x height x width x channels]
. - suy luận hàng loạt không được hỗ trợ (
batch
buộc phải là 1). - chỉ hỗ trợ đầu vào RGB (
channels
bắt buộc phải là 3). - nếu loại là
kTfLiteFloat32
thì bắt buộc phải đính kèm NormalizationOptions vào siêu dữ liệu để chuẩn hóa đầu vào.
- hình ảnh đầu vào có kích thước
DetectionPostProcess
, tức là:- Tenor vị trí (
kTfLiteFloat32
):- tensor có kích thước
[1 x num_results x 4]
, mảng bên trong biểu thị các hộp giới hạn có dạng [top, left, right, Bottom]. -
BoundingBoxProperties
bắt buộc phải được đính kèm với siêu dữ liệu và phải chỉ địnhtype=BOUNDARIES
vàcoordinate_type=RATIO
.
- tensor có kích thước
kTfLiteFloat32
):- tensor có kích thước
[1 x num_results]
, mỗi giá trị biểu thị chỉ số nguyên của một lớp. - nếu bản đồ nhãn được đính kèm với siêu dữ liệu dưới dạng tệp được liên kết
TENSOR_VALUE_LABELS
thì chúng sẽ được sử dụng để chuyển đổi giá trị tensor thành nhãn.
kTfLiteFloat32
):- tensor có kích thước
[1 x num_results]
, mỗi giá trị biểu thị điểm của đối tượng được phát hiện.
kTfLiteFloat32
):- số nguyên num_results dưới dạng tenxơ có kích thước
[1]
.
Bạn có thể tìm thấy một ví dụ về mô hình như vậy trên TensorFlow Hub. .
Các lớp lồng nhau
lớp học | ObjectDetector.ObjectDetectorOptions | Các tùy chọn để thiết lập ObjectDetector. |
Phương pháp công cộng
Phương pháp kế thừa
Phương pháp công cộng
tĩnh công khai ObjectDetector createFromBuffer ( ByteBuffer modelBuffer)
Tạo một phiên bản ObjectDetector
với bộ đệm mô hình và ObjectDetector.ObjectDetectorOptions
mặc định.
Thông số
bộ đệm mô hình | ByteBuffer trực tiếp hoặc MappedByteBuffer của mô hình phát hiện |
---|
Ném
Ngoại lệ Đối số bất hợp pháp | nếu bộ đệm mô hình không phải là ByteBuffer trực tiếp hoặc MappedByteBuffer * @throws IllegalStateException nếu có lỗi nội bộ |
---|---|
Ngoại lệ thời gian chạy | nếu có một lỗi không xác định khác |
tĩnh công khai ObjectDetector createFromBufferAndOptions (các tùy chọn ByteBuffer modelBuffer, ObjectDetector.ObjectDetectorOptions )
Tạo một phiên bản ObjectDetector
với bộ đệm mô hình và ObjectDetector.ObjectDetectorOptions
.
Thông số
bộ đệm mô hình | ByteBuffer trực tiếp hoặc MappedByteBuffer của mô hình phát hiện |
---|---|
tùy chọn |
Ném
Ngoại lệ Đối số bất hợp pháp | nếu bộ đệm mô hình không phải là ByteBuffer trực tiếp hoặc MappedByteBuffer |
---|---|
Ngoại lệ nhà nước bất hợp pháp | nếu có lỗi nội bộ |
Ngoại lệ thời gian chạy | nếu có một lỗi không xác định khác |
public static ObjectDetector createFromFile (Ngữ cảnh bối cảnh, String modelPath)
Tạo một phiên bản ObjectDetector
từ ObjectDetector.ObjectDetectorOptions
mặc định.
Thông số
bối cảnh | |
---|---|
đường dẫn mô hình | đường dẫn đến mô hình phát hiện có siêu dữ liệu trong nội dung |
Ném
IOException | nếu xảy ra lỗi I/O khi tải mô hình tflite |
---|---|
Ngoại lệ Đối số bất hợp pháp | nếu một đối số không hợp lệ |
Ngoại lệ nhà nước bất hợp pháp | nếu có lỗi nội bộ |
Ngoại lệ thời gian chạy | nếu có một lỗi không xác định khác |
tĩnh công khai ObjectDetector createFromFile ( File modelFile)
Tạo một phiên bản ObjectDetector
từ ObjectDetector.ObjectDetectorOptions
mặc định.
Thông số
tập tin mô hình | mô hình phát hiện File tệp |
---|
Ném
IOException | nếu xảy ra lỗi I/O khi tải mô hình tflite |
---|---|
Ngoại lệ Đối số bất hợp pháp | nếu một đối số không hợp lệ |
Ngoại lệ nhà nước bất hợp pháp | nếu có lỗi nội bộ |
Ngoại lệ thời gian chạy | nếu có một lỗi không xác định khác |
public static ObjectDetector createFromFileAndOptions (Ngữ cảnh ngữ cảnh, String modelPath, ObjectDetector.ObjectDetectorOptions tùy chọn)
Tạo một phiên bản ObjectDetector
từ ObjectDetector.ObjectDetectorOptions
.
Thông số
bối cảnh | |
---|---|
đường dẫn mô hình | đường dẫn đến mô hình phát hiện có siêu dữ liệu trong nội dung |
tùy chọn |
Ném
IOException | nếu xảy ra lỗi I/O khi tải mô hình tflite |
---|---|
Ngoại lệ Đối số bất hợp pháp | nếu một đối số không hợp lệ |
Ngoại lệ nhà nước bất hợp pháp | nếu có lỗi nội bộ |
Ngoại lệ thời gian chạy | nếu có một lỗi không xác định khác |
tĩnh công khai ObjectDetector createFromFileAndOptions (Tùy chọn tệp modelFile, ObjectDetector.ObjectDetectorOptions )
Tạo một phiên bản ObjectDetector
từ ObjectDetector.ObjectDetectorOptions
.
Thông số
tập tin mô hình | mô hình phát hiện File tệp |
---|---|
tùy chọn |
Ném
IOException | nếu xảy ra lỗi I/O khi tải mô hình tflite |
---|---|
Ngoại lệ Đối số bất hợp pháp | nếu một đối số không hợp lệ |
Ngoại lệ nhà nước bất hợp pháp | nếu có lỗi nội bộ |
Ngoại lệ thời gian chạy | nếu có một lỗi không xác định khác |
Danh sách công khai < Phát hiện > phát hiện ( hình ảnh MlImage )
Thực hiện phát hiện thực tế trên MlImage
được cung cấp.
Thông số
hình ảnh | một đối tượng MlImage đại diện cho một hình ảnh |
---|
Ném
Ngoại lệ nhà nước bất hợp pháp | nếu có lỗi nội bộ |
---|---|
Ngoại lệ thời gian chạy | nếu có một lỗi không xác định khác |
Ngoại lệ Đối số bất hợp pháp | nếu loại lưu trữ hoặc định dạng của hình ảnh không được hỗ trợ |
Danh sách công khai < Phát hiện > phát hiện ( hình ảnh TensorImage , tùy chọn ImageProcessingOptions )
Thực hiện phát hiện thực tế trên hình ảnh được cung cấp.
ObjectDetector
hỗ trợ các loại không gian màu TensorImage
sau:
ObjectDetector
hỗ trợ các tùy chọn sau:
- xoay hình ảnh (thông qua
ImageProcessingOptions.Builder.setOrientation(ImageProcessingOptions.Orientation)
). Nó mặc định làImageProcessingOptions.Orientation.TOP_LEFT
.
Thông số
hình ảnh | một đối tượng UINT8 TensorImage đại diện cho hình ảnh RGB hoặc YUV |
---|---|
tùy chọn | các tùy chọn để định cấu hình cách xử lý trước hình ảnh |
Ném
Ngoại lệ nhà nước bất hợp pháp | nếu có lỗi nội bộ |
---|---|
Ngoại lệ thời gian chạy | nếu có một lỗi không xác định khác |
Ngoại lệ Đối số bất hợp pháp | nếu loại hình ảnh không gian màu không được hỗ trợ |
Danh sách công khai < Phát hiện > phát hiện ( tùy chọn hình ảnh MlImage , ImageProcessingOptions )
Thực hiện phát hiện thực tế trên MlImage
được cung cấp với ImageProcessingOptions
.
ObjectDetector
hỗ trợ các tùy chọn sau:
- xoay hình ảnh (thông qua
ImageProcessingOptions.Builder.setOrientation(ImageProcessingOptions.Orientation)
). Nó mặc định làImageProcessingOptions.Orientation.TOP_LEFT
.MlImage.getRotation()
không hiệu quả.
Thông số
hình ảnh | một đối tượng MlImage đại diện cho một hình ảnh |
---|---|
tùy chọn | các tùy chọn để định cấu hình cách xử lý trước hình ảnh |
Ném
Ngoại lệ nhà nước bất hợp pháp | nếu có lỗi nội bộ |
---|---|
Ngoại lệ thời gian chạy | nếu có một lỗi không xác định khác |
Ngoại lệ Đối số bất hợp pháp | nếu loại lưu trữ hoặc định dạng của hình ảnh không được hỗ trợ |
Danh sách công khai < Phát hiện > phát hiện (hình ảnh TensorImage )
Thực hiện phát hiện thực tế trên hình ảnh được cung cấp.
ObjectDetector
hỗ trợ các loại không gian màu TensorImage
sau:
Thông số
hình ảnh | một đối tượng UINT8 TensorImage đại diện cho hình ảnh RGB hoặc YUV |
---|
Ném
Ngoại lệ nhà nước bất hợp pháp | nếu có lỗi nội bộ |
---|---|
Ngoại lệ thời gian chạy | nếu có một lỗi không xác định khác |
Ngoại lệ Đối số bất hợp pháp | nếu loại hình ảnh không gian màu không được hỗ trợ |