MetadataExtractor

lớp công khai MetadataExtractor

Tải siêu dữ liệu từ Mô hình TFLite FlatBuffer.

Bạn có thể tạo FlatBuffer mô hình TFLite bằng tệp giản đồ Mô hình TFLite.

Một số mô hình chứa bộ đệm siêu dữ liệu TFLite, giúp ghi lại thêm thông tin về hoạt động của mô hình và cách diễn giải mô hình. Bạn có thể tạo bộ đệm siêu dữ liệu TFLite bằng cách sử dụng tệp giản đồ siêu dữ liệu TFLite.

Được phép truyền vào mô hình FlatBuffer mà không cần siêu dữ liệu TFLite. Tuy nhiên, việc gọi các phương thức đọc siêu dữ liệu TFLite sẽ gây ra lỗi thời gian chạy.

Tương tự, hệ thống được phép truyền vào FlatBuffer mô hình mà không cần tệp liên kết. Tuy nhiên, việc gọi các phương thức đọc các tệp liên kết sẽ gây ra lỗi thời gian chạy.

Mặc dù mô hình TFLite FlatBuffer hỗ trợ nhiều đồ thị con, nhưng tính đến nay, Trình phiên dịch TFLite chỉ hỗ trợ một đồ thị con duy nhất. Hãy xem hướng dẫn cách chỉ định biểu đồ con trong quá trình chuyển đổi để biết thêm thông tin. Do đó, MetadataExtractor bỏ qua chỉ mục đồ thị con làm dữ liệu đầu vào trong phương thức.

Lớp lồng ghép

lớp MetadataExtractor.QuantizationParams Các tham số lượng tử hoá tương ứng với bảng QuantizationParameters trong tệp giản đồ Mô hình TFLite. 

Công trình công cộng

MetadataExtractor(vùng đệm ByteBuffer)
Tạo MetadataExtractor với mô hình TFLite FlatBuffer.

Phương thức công khai

InputStream
getAssociatedFile(Tên tệp String)
Lấy tệp liên kết được đóng gói với fileName được chỉ định.
Đặt<String>
Hàm getAssociatedFileNames()
Lấy tên tệp của các tệp liên kết.
int
Hàm getInputTensorCount()
Lấy số lượng tensor đầu vào trong mô hình.
TensorMetadata
getInputTensorMetadata(int inputIndex)
Lấy siêu dữ liệu cho tensor đầu vào do inputIndex chỉ định.
MetadataExtractor.QuantizationParams
getInputTensorQuantizationParams(int inputIndex)
Lấy các tham số lượng tử hoá cho tensor đầu vào do inputIndex chỉ định.
int[]
getInputTensorShape(int inputIndex)
Lấy hình dạng của tensor đầu vào với inputIndex.
byte
getInputTensorType(int inputIndex)
Lấy ERROR(/TensorType) của tensor đầu vào bằng inputIndex.
ModelMetadata
getModelMetadata()
Lấy trình xử lý gốc cho siêu dữ liệu của mô hình.
int
Hàm getOutputTensorCount()
Lấy số lượng tensor đầu ra trong mô hình.
TensorMetadata
getOutputTensorMetadata(int outputIndex)
Lấy siêu dữ liệu cho tensor đầu ra do outputIndex chỉ định.
MetadataExtractor.QuantizationParams
getOutputTensorQuantizationParams(int outputIndex)
Lấy các tham số lượng tử hoá cho tensor đầu ra do outputIndex chỉ định.
int[]
getOutputTensorShape(int outputIndex)
Lấy hình dạng của tensor đầu ra với outputIndex.
byte
getOutputTensorType(int outputIndex)
Lấy ERROR(/TensorType) của tensor đầu ra bằng outputIndex.
boolean
hasMetadata()
Trả về true nếu mô hình có siêu dữ liệu.
giá trị boolean
isMinimumParserVersionSatisfied()
Trả về true nếu phiên bản trình phân tích cú pháp tối thiểu bắt buộc theo vùng đệm phẳng siêu dữ liệu nhất định đứng trước hoặc bằng phiên bản của trình phân tích cú pháp siêu dữ liệu mà thư viện MetadataExtractor này đang dựa vào.

Các phương thức kế thừa

Công trình công cộng

công khai MetadataExtractor (ByteBuffer vùng đệm)

Tạo MetadataExtractor với mô hình TFLite FlatBuffer.

Thông số
bộ đệm mô hình TFLite FlatBuffer
Gửi
IllegalArgumentException nếu số lượng tensor đầu vào hoặc đầu ra trong mô hình không khớp với số lượng tensor trong siêu dữ liệu
IOException nếu xảy ra lỗi khi đọc mô hình dưới dạng tệp Zip

Phương thức công khai

công khai InputStream getAssociatedFile (String fileName)

Lấy tệp liên kết được đóng gói với fileName được chỉ định.

Thông số
fileName tên của tệp được liên kết
Giá trị trả về
  • luồng đầu vào thô chứa tệp được chỉ định
Gửi
IllegalStateException nếu mô hình không phải là tệp zip
IllegalArgumentException nếu tệp được chỉ định không tồn tại trong mô hình

công khai Đặt<String> getAssociatedFileNames ()

Lấy tên tệp của các tệp liên kết.

Giá trị trả về
  • tên của các tệp được liên kết
Gửi
IllegalStateException nếu mô hình không phải là tệp zip

công khai int getInputTensorCount ()

Lấy số lượng tensor đầu vào trong mô hình.

công khai TensorMetadata getInputTensorMetadata (int inputIndex)

Lấy siêu dữ liệu cho tensor đầu vào do inputIndex chỉ định.

Thông số
inputIndex chỉ mục của tensor đầu vào mong muốn
Gửi
IllegalStateException nếu mô hình này không chứa siêu dữ liệu mô hình

công khai MetadataExtractor.QuantizationParams getInputTensorQuantizationParams (int inputIndex)

Lấy các tham số lượng tử hoá cho tensor đầu vào do inputIndex chỉ định.

Thông số
inputIndex chỉ mục của tensor đầu vào mong muốn

công khai int[] getInputTensorShape (int inputIndex)

Lấy hình dạng của tensor đầu vào với inputIndex.

Thông số
inputIndex chỉ mục của tensor đầu vào mong muốn

công khai byte getInputTensorType (int inputIndex)

Lấy ERROR(/TensorType) của tensor đầu vào bằng inputIndex.

Thông số
inputIndex chỉ mục của tensor đầu vào mong muốn

công khai ModelMetadata getModelMetadata ()

Lấy trình xử lý gốc cho siêu dữ liệu của mô hình.

Gửi
IllegalStateException nếu mô hình này không chứa siêu dữ liệu mô hình

công khai int getOutputTensorCount ()

Lấy số lượng tensor đầu ra trong mô hình.

công khai TensorMetadata getOutputTensorMetadata (int outputIndex)

Lấy siêu dữ liệu cho tensor đầu ra do outputIndex chỉ định.

Thông số
outputIndex chỉ mục của tensor đầu ra mong muốn
Gửi
IllegalStateException nếu mô hình này không chứa siêu dữ liệu mô hình

công khai MetadataExtractor.QuantizationParams getOutputTensorQuantizationParams (int outputIndex)

Lấy các tham số lượng tử hoá cho tensor đầu ra do outputIndex chỉ định.

Thông số
outputIndex chỉ mục của tensor đầu ra mong muốn

công khai int[] getOutputTensorShape (int outputIndex)

Lấy hình dạng của tensor đầu ra với outputIndex.

Thông số
outputIndex chỉ mục của tensor đầu ra mong muốn

công khai byte getOutputTensorType (int outputIndex)

Lấy ERROR(/TensorType) của tensor đầu ra bằng outputIndex.

Thông số
outputIndex chỉ mục của tensor đầu ra mong muốn

boolean công khai boolean hasMetadata ()

Trả về true nếu mô hình có siêu dữ liệu. Nếu không, hãy trả về false.

công khai cuối cùng boolean isMinimumParserVersionSatisfied ()

Trả về true nếu phiên bản trình phân tích cú pháp tối thiểu bắt buộc theo vùng đệm phẳng siêu dữ liệu nhất định đứng trước hoặc bằng phiên bản của trình phân tích cú pháp siêu dữ liệu mà thư viện MetadataExtractor này đang dựa vào. Trong trường hợp này, tất cả các trường trong siêu dữ liệu đều có thể được phân tích cú pháp chính xác bằng thư viện trình trích xuất siêu dữ liệu này. Nếu không, hàm này sẽ trả về false.

Ví dụ: giả sử phiên bản trình phân tích cú pháp siêu dữ liệu cơ bản là 1.14.1,

  • thì hàm sẽ trả về true, nếu phiên bản trình phân tích cú pháp tối thiểu bắt buộc giống hoặc cũ hơn, chẳng hạn như 1.14.1 hoặc 1.14.0. Phiên bản rỗng đứng trước tất cả các phiên bản số, vì một số vùng đệm siêu dữ liệu được tạo trước bản phát hành có phiên bản đầu tiên;
  • thì hàm sẽ trả về false, nếu phiên bản trình phân tích cú pháp tối thiểu bắt buộc mới hơn, chẳng hạn như 1.14.2.