Lớp trợ giúp để chuyển đổi các giá trị biểu thị hộp giới hạn thành hình chữ nhật.
Lớp này cung cấp hàm tĩnh để tạo các hộp giới hạn dưới dạng RectF
từ nhiều loại cấu hình.
Nói chung, một hộp giới hạn có thể được biểu thị bằng 4 giá trị số thực, nhưng các giá trị này có thể được diễn giải theo nhiều cách. Chúng tôi hiện hỗ trợ 3 BoundingBoxUtil.Type
cấu hình và bạn cũng có thể định cấu hình thứ tự của các phần tử trong mỗi loại.
Lớp lồng ghép
enum | BoundingBoxUtil.CoordinateType | Cho biết liệu toạ độ là pixel thực tế hay tỷ lệ tương đối. | |
enum | BoundingBoxUtil.Type | Mô tả cách biểu thị hộp giới hạn. |
Phương thức công khai
tĩnh Danh sách<RectF> |
chuyển đổi(tensor TensorBuffer, int[] valueIndex, int boundingBoxAxis, loại BoundingBoxUtil.Type, BoundingBoxUtil.CoordinateType coordinateType, int chiều cao, chiều rộng int)
Tạo danh sách các hộp giới hạn từ
TensorBuffer đại diện cho các hộp giới hạn. |
Các phương thức kế thừa
Phương thức công khai
công khai tĩnh Danh sách<RectF> convert (TensorBuffer tensor, int[] valueIndex, int boundingBoxAxis, BoundingBoxUtil.Type loại, BoundingBoxUtil.CoordinateType coordinatetType, chiều rộng int{/15, int chiều cao)
Tạo danh sách các hộp giới hạn từ TensorBuffer
đại diện cho các hộp giới hạn.
Tham số
tensor | chứa dữ liệu đại diện cho một số hộp. |
---|---|
valueIndex | biểu thị thứ tự của các phần tử được xác định trong mỗi loại hộp giới hạn. Một mảng chỉ mục trống đại diện cho thứ tự mặc định của từng loại hộp giới hạn. Ví dụ: để biểu thị thứ tự mặc định của BOUNDARIES, {left, top, right, bottom}, chỉ mục phải là {0, 1, 2,
3}. Để biểu thị thứ tự {left, phải, top, bottom}, thứ tự phải là {0, 2, 1, 3}.
Bạn có thể áp dụng mảng chỉ mục cho tất cả các loại hộp giới hạn để điều chỉnh thứ tự của các phần tử cơ bản tương ứng. |
boundingBoxAxis | chỉ định chỉ mục của kích thước đại diện cho hộp giới hạn. Kích thước của kích thước đó bắt buộc phải bằng 4. Chỉ mục tại đây bắt đầu từ 0. Ví dụ: nếu tensor có hình dạng 4x10, thì trục cho các hộp giới hạn có thể bằng 0. Trục âm cũng được hỗ trợ: -1 biểu thị trục cuối cùng và -2 biểu thị trục thứ hai, .v.v. Đối với hình dạng 10x4, trục có thể là 1 (hoặc -1, tương đương). |
loại | xác định cách chuyển đổi các giá trị thành hộp. xem BoundingBoxUtil.Type |
coordinateType | xác định cách các giá trị được diễn giải thành toạ độ. xem BoundingBoxUtil.CoordinateType |
độ cao | chiều cao của hình ảnh chứa hộp. Chỉ có hiệu ứng khi coordinateType là BoundingBoxUtil.CoordinateType.RATIO |
chiều rộng | chiều rộng của hình ảnh chứa hộp. Chỉ có hiệu ứng khi coordinateType là BoundingBoxUtil.CoordinateType.RATIO |
Giá trị trả về
- Danh sách các hộp giới hạn mà
tensor
đại diện. Tất cả kích thước ngoại trừboundingBoxAxis
sẽ được thu gọn với thứ tự giữ nguyên. Ví dụ: vớitensor
có hình dạng {1, 4, 10, 2} vàboundingBoxAxis = 1
, kết quả sẽ là một danh sách gồm 20 hộp giới hạn.
Gửi
IllegalArgumentException | nếu kích thước của kích thước hộp giới hạn (do boundingBoxAxis đặt) không phải là 4. |
---|---|
IllegalArgumentException | nếu boundingBoxAxis không nằm trong (-(D+1), D) , trong đó D là số lượng kích thước của tensor . |
IllegalArgumentException | nếu tensor có loại dữ liệu không phải là DataType.FLOAT32 .
|