Phân đoạn ảnh là quá trình phân vùng ảnh kỹ thuật số thành nhiều đoạn (tập hợp các pixel, còn được gọi là đối tượng ảnh). Mục tiêu của phân đoạn là đơn giản hóa và / hoặc thay đổi hình ảnh đại diện thành một thứ gì đó có ý nghĩa hơn và dễ phân tích hơn.
Hình ảnh sau đây cho thấy đầu ra của mô hình phân đoạn hình ảnh trên Android. Mô hình sẽ tạo ra một mặt nạ trên các đối tượng mục tiêu với độ chính xác cao.
Bắt đầu
Nếu bạn chưa quen với TensorFlow Lite và đang làm việc với Android hoặc iOS, bạn nên khám phá các ứng dụng mẫu sau đây có thể giúp bạn bắt đầu.
Bạn có thể tận dụng API có sẵn từ Thư viện tác vụ TensorFlow Lite để tích hợp các mô hình phân đoạn hình ảnh chỉ trong một vài dòng mã. Bạn cũng có thể tích hợp mô hình bằng cách sử dụng API Java của Trình thông dịch TensorFlow Lite .
Ví dụ Android dưới đây minh họa việc triển khai cho cả hai phương thức là lib_task_api và lib_interpreter , tương ứng.
Nếu bạn đang sử dụng nền tảng không phải Android hoặc iOS hoặc bạn đã quen thuộc với các API TensorFlow Lite , bạn có thể tải xuống mô hình phân đoạn hình ảnh bắt đầu của chúng tôi.
Mô tả về mô hình
DeepLab là một mô hình học sâu hiện đại để phân đoạn hình ảnh ngữ nghĩa, trong đó mục tiêu là gán các nhãn ngữ nghĩa (ví dụ: người, chó, mèo) cho mọi pixel trong hình ảnh đầu vào.
Làm thế nào nó hoạt động
Phân đoạn hình ảnh theo ngữ nghĩa dự đoán liệu mỗi pixel của hình ảnh có được liên kết với một lớp nhất định hay không. Điều này trái ngược với phát hiện đối tượng , phát hiện các đối tượng trong vùng hình chữ nhật và phân loại ảnh , phân loại ảnh tổng thể.
Việc triển khai hiện tại bao gồm các tính năng sau:
- DeepLabv1: Chúng tôi sử dụng tích chập bất thường để kiểm soát rõ ràng độ phân giải mà tại đó các phản hồi của tính năng được tính toán trong Mạng thần kinh hội tụ sâu.
- DeepLabv2: Chúng tôi sử dụng tổng hợp kim tự tháp không gian khắc nghiệt (ASPP) để phân đoạn mạnh mẽ các đối tượng ở nhiều tỷ lệ bằng các bộ lọc ở nhiều tốc độ lấy mẫu và trường xem hiệu quả.
- DeepLabv3: Chúng tôi tăng cường mô-đun ASPP với tính năng cấp hình ảnh [5, 6] để thu thập thông tin phạm vi xa hơn. Chúng tôi cũng bao gồm các tham số chuẩn hóa hàng loạt [7] để hỗ trợ quá trình đào tạo. Đặc biệt, chúng tôi áp dụng phép tích chập để trích xuất các tính năng đầu ra ở các bước đầu ra khác nhau trong quá trình đào tạo và đánh giá, điều này cho phép hiệu quả đào tạo BN ở bước đầu ra = 16 và đạt được hiệu suất cao ở bước đầu ra = 8 trong quá trình đánh giá.
- DeepLabv3 +: Chúng tôi mở rộng DeepLabv3 để bao gồm một mô-đun bộ giải mã đơn giản nhưng hiệu quả để tinh chỉnh kết quả phân đoạn, đặc biệt là dọc theo ranh giới đối tượng. Hơn nữa, trong cấu trúc bộ mã hóa-giải mã này, người ta có thể tùy ý kiểm soát độ phân giải của các tính năng bộ mã hóa được trích xuất bằng cách tích chập để cân bằng độ chính xác và thời gian chạy.
Điểm chuẩn hiệu suất
Số chuẩn hiệu suất được tạo bằng công cụ được mô tả ở đây .
Tên Model | Kích thước mô hình | Thiết bị | GPU | CPU |
---|---|---|---|---|
Deeplab v3 | 2,7 Mb | Pixel 3 (Android 10) | 16ms | 37ms * |
Pixel 4 (Android 10) | 20ms | 23ms * | ||
iPhone XS (iOS 12.4.1) | 16ms | 25ms ** |
* 4 chủ đề được sử dụng.
** 2 luồng được sử dụng trên iPhone để có kết quả hoạt động tốt nhất.