Thực hiện phân đoạn 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à một 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
kTfLiteUInt8
/ kTfLiteFloat32
)- tensor có kích thước
[batch x mask_height x mask_width x num_classes]
, trong đóbatch
bắt buộc phải bằng 1,mask_width
vàmask_height
là kích thước của mặt nạ phân đoạn do mô hình tạo ra vànum_classes
là số lượng lớp được mô hình hỗ trợ. - (các) bản đồ nhãn tùy chọn (nhưng được khuyến nghị) có thể được đính kèm dưới dạng các AssociatedFile-s với loại TENSOR_AXIS_LABELS, chứa một nhãn trên mỗi dòng. AssociatedFile đầu tiên (nếu có) được sử dụng để điền tên lớp, tức là
ColoredLabel.getlabel()
của kết quả. Tên hiển thị, tức làColoredLabel.getDisplayName()
, được điền từ AssociatedFile (nếu có) có ngôn ngữ khớp với trường `display_names_locale` của `ImageSegmenterOptions` được sử dụng tại thời điểm tạo ("en" theo mặc định, tức là tiếng Anh). Nếu không có cái nào trong số này có sẵn thì chỉ có trường `index` của kết quả sẽ được điền.
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 | ImageSegmenter.ImageSegmenterOptions | Các tùy chọn để thiết lập ImageSegmenter . |
Phương pháp công cộng
Phương pháp kế thừa
Phương pháp công cộng
ImageSegmenter tĩnh công khai createFromBuffer ( ByteBuffer modelBuffer)
Tạo một phiên bản ImageSegmenter
với bộ đệm mô hình và ImageSegmenter.ImageSegmenterOptions
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ân đoạn |
---|
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 bộ đệm mô hình không phải là ByteBuffer trực tiếp hoặc MappedByteBuffer |
ImageSegmenter tĩnh công khai createFromBufferAndOptions (các tùy chọn ByteBuffer modelBuffer, ImageSegmenter.ImageSegmenterOptions )
Tạo một phiên bản ImageSegmenter
với bộ đệm mô hình và ImageSegmenter.ImageSegmenterOptions
.
Thông số
bộ đệm mô hình | ByteBuffer trực tiếp hoặc MappedByteBuffer của mô hình phân đoạn |
---|---|
tùy chọn |
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 bộ đệm mô hình không phải là ByteBuffer trực tiếp hoặc MappedByteBuffer |
ImageSegmenter tĩnh công khai createFromFile (Ngữ cảnh bối cảnh, String modelPath)
Tạo một phiên bản ImageSegmenter
từ ImageSegmenter.ImageSegmenterOptions
mặc định.
Thông số
bối cảnh | |
---|---|
đường dẫn mô hình | đường dẫn của mô hình phân đoạn với 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 |
ImageSegmenter tĩnh công khai createFromFile ( File modelFile)
Tạo một phiên bản ImageSegmenter
từ ImageSegmenter.ImageSegmenterOptions
mặc định.
Thông số
tập tin mô hình | mô hình phân File Tệp dụ |
---|
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 |
ImageSegmenter tĩnh công khai createFromFileAndOptions (Các tùy chọn File modelFile, ImageSegmenter.ImageSegmenterOptions )
Tạo một phiên bản ImageSegmenter
từ ImageSegmenter.ImageSegmenterOptions
.
Thông số
tập tin mô hình | mô hình phân File Tệp dụ |
---|---|
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 |
public static ImageSegmenter createFromFileAndOptions (Ngữ cảnh ngữ cảnh, String modelPath, ImageSegmenter.ImageSegmenterOptions tùy chọn)
Tạo một phiên bản ImageSegmenter
từ ImageSegmenter.ImageSegmenterOptions
.
Thông số
bối cảnh | |
---|---|
đường dẫn mô hình | đường dẫn của mô hình phân đoạn với 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 |
Danh sách công khai < Phân đoạn > phân đoạn (tùy chọn frameBufferHandle, ImageProcessingOptions dài)
Thông số
khungBufferHandle | |
---|---|
tùy chọn |
Danh sách công khai < Phân đoạn > phân đoạn (hình ảnh TensorImage )
Thực hiện phân đoạn thực tế trên hình ảnh được cung cấp.
ImageSegmenter
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 |
---|
Trả lại
- kết quả thực hiện phân đoạn ảnh. Lưu ý rằng tại thời điểm đó, một phần tử
Segmentation
duy nhất dự kiến sẽ được trả về. Kết quả được lưu trữ trongList
để mở rộng sau này, chẳng hạn như các mô hình phân đoạn phiên bản, có thể trả về một phân đoạn cho mỗi đối tượng.
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ân đoạn > phân đoạn (hình ảnh MlImage )
Thực hiện phân đoạn thực tế trên MlImage
được cung cấp.
Thông số
hình ảnh | một MlImage để phân đoạn. |
---|
Trả lại
- kết quả thực hiện phân đoạn ảnh. Lưu ý rằng tại thời điểm đó, một phần tử
Segmentation
duy nhất dự kiến sẽ được trả về. Kết quả được lưu trữ trongList
để mở rộng sau này, chẳng hạn như các mô hình phân đoạn phiên bản, có thể trả về một phân đoạn cho mỗi đối tượng.
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ân đoạn > phân đoạn ( hình ảnh TensorImage , tùy chọn ImageProcessingOptions )
Thực hiện phân đoạn thực tế trên hình ảnh được cung cấp bằng ImageProcessingOptions
.
ImageSegmenter
hỗ trợ các loại không gian màu TensorImage
sau:
ImageSegmenter
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 cấu hình cách xử lý trước hình ảnh |
Trả lại
- kết quả thực hiện phân đoạn ảnh. Lưu ý rằng tại thời điểm đó, một phần tử
Segmentation
duy nhất dự kiến sẽ được trả về. Kết quả được lưu trữ trongList
để mở rộng sau này, chẳng hạn như các mô hình phân đoạn phiên bản, có thể trả về một phân đoạn cho mỗi đối tượng.
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ân đoạn > phân đoạn (hình ảnh MlImage , tùy chọn ImageProcessingOptions )
Thực hiện phân đoạn thực tế trên MlImage
được cung cấp với ImageProcessingOptions
.
ImageSegmenter
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 MlImage để phân đoạn. |
---|---|
tùy chọn | các tùy chọn cấu hình cách xử lý trước hình ảnh. |
Trả lại
- kết quả thực hiện phân đoạn ảnh. Lưu ý rằng tại thời điểm đó, một phần tử
Segmentation
duy nhất dự kiến sẽ được trả về. Kết quả được lưu trữ trongList
để mở rộng sau này, chẳng hạn như các mô hình phân đoạn phiên bản, có thể trả về một phân đoạn cho mỗi đối tượng.
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ợ |