ดำเนินการแบ่งส่วนภาพ
API คาดว่าจะมีโมเดล TFLite พร้อมด้วย ข้อมูลเมตาของโมเดล TFLite .
API รองรับโมเดลที่มีเทนเซอร์อินพุตรูปภาพหนึ่งตัวและเทนเซอร์เอาท์พุตหนึ่งตัว เพื่อให้เจาะจงยิ่งขึ้น นี่คือข้อกำหนด
- อินพุตอิมเมจเทนเซอร์ (
kTfLiteUInt8
/kTfLiteFloat32
)- อินพุตรูปภาพขนาด
[batch x height x width x channels]
- ไม่รองรับการอนุมานแบบแบตช์ (
batch
ต้องเป็น 1) - รองรับเฉพาะอินพุต RGB (
channels
ต้องเป็น 3) - หากประเภทเป็น
kTfLiteFloat32
จำเป็นต้องแนบ NormalizationOptions กับข้อมูลเมตาเพื่อทำให้อินพุตเป็นมาตรฐาน
- อินพุตรูปภาพขนาด
kTfLiteUInt8
/ kTfLiteFloat32
)- เทนเซอร์ขนาด
[batch x mask_height x mask_width x num_classes]
โดยที่batch
ช์ต้องเป็น 1,mask_width
และmask_height
คือขนาดของมาสก์การแบ่งส่วนที่สร้างโดยโมเดล และnum_classes
คือจำนวนคลาสที่โมเดลรองรับ - สามารถแนบแผนผังป้ายกำกับเสริม (แต่แนะนำ) เป็น AssociatedFile-s ที่มีประเภท TENSOR_AXIS_LABELS โดยมีหนึ่งป้ายกำกับต่อบรรทัด AssociatedFile ตัวแรก (ถ้ามี) จะถูกใช้เพื่อกรอกชื่อคลาส เช่น
ColoredLabel.getlabel()
ของผลลัพธ์ ชื่อที่แสดง เช่นColoredLabel.getDisplayName()
จะถูกกรอกจาก AssociatedFile (ถ้ามี) ซึ่งมีโลแคลตรงกับช่อง `display_names_locale` ของ `ImageSegmenterOptions` ที่ใช้ตอนสร้าง ("en" ตามค่าเริ่มต้น เช่น ภาษาอังกฤษ) หากไม่มีรายการใดเลย ระบบจะกรอกเฉพาะช่อง "ดัชนี" ของผลลัพธ์เท่านั้น
ตัวอย่างของโมเดลดังกล่าวมีอยู่ใน TensorFlow Hub .
คลาสที่ซ้อนกัน
ระดับ | ImageSegmenter.ImageSegmenterOptions | ตัวเลือกสำหรับการตั้งค่า ImageSegmenter |
วิธีการสาธารณะ
วิธีการสืบทอด
วิธีการสาธารณะ
ImageSegmenter แบบคงที่สาธารณะ createFromBuffer ( ByteBuffer modelBuffer)
สร้างอินสแตนซ์ ImageSegmenter
ด้วยบัฟเฟอร์โมเดลและ ImageSegmenter.ImageSegmenterOptions
ดีฟอลต์
พารามิเตอร์
modelBuffer | ByteBuffer โดยตรงหรือ MappedByteBuffer ของโมเดลการแบ่งส่วน |
---|
ขว้าง
IllegalStateException | หากมีข้อผิดพลาดภายใน |
---|---|
RuntimeException | หากมีข้อผิดพลาดที่ไม่ได้ระบุเป็นอย่างอื่น |
ข้อยกเว้นอาร์กิวเมนต์ที่ผิดกฎหมาย | หากบัฟเฟอร์โมเดลไม่ใช่ ByteBuffer โดยตรงหรือ MappedByteBuffer |
ImageSegmenter แบบคงที่สาธารณะ createFromBufferAndOptions (ตัวเลือก ByteBuffer modelBuffer, ImageSegmenter.ImageSegmenterOptions )
สร้างอินสแตนซ์ ImageSegmenter
ด้วยบัฟเฟอร์โมเดลและ ImageSegmenter.ImageSegmenterOptions
พารามิเตอร์
modelBuffer | ByteBuffer โดยตรงหรือ MappedByteBuffer ของโมเดลการแบ่งส่วน |
---|---|
ตัวเลือก |
ขว้าง
IllegalStateException | หากมีข้อผิดพลาดภายใน |
---|---|
RuntimeException | หากมีข้อผิดพลาดที่ไม่ได้ระบุเป็นอย่างอื่น |
ข้อยกเว้นอาร์กิวเมนต์ที่ผิดกฎหมาย | หากบัฟเฟอร์โมเดลไม่ใช่ ByteBuffer โดยตรงหรือ MappedByteBuffer |
ImageSegmenter แบบคงที่สาธารณะ createFromFile (บริบทบริบท, String modelPath)
สร้างอินสแตนซ์ ImageSegmenter
จาก ImageSegmenter.ImageSegmenterOptions
เริ่มต้น
พารามิเตอร์
บริบท | |
---|---|
โมเดลพาธ | เส้นทางของโมเดลการแบ่งส่วนพร้อมข้อมูลเมตาในเนื้อหา |
ขว้าง
IOข้อยกเว้น | หากมีข้อผิดพลาด I/O เกิดขึ้นเมื่อโหลดโมเดล tflite |
---|---|
ข้อยกเว้นอาร์กิวเมนต์ที่ผิดกฎหมาย | ถ้าอาร์กิวเมนต์ไม่ถูกต้อง |
IllegalStateException | หากมีข้อผิดพลาดภายใน |
RuntimeException | หากมีข้อผิดพลาดที่ไม่ได้ระบุเป็นอย่างอื่น |
ImageSegmenter แบบคงที่สาธารณะ createFromFile ( ไฟล์ modelFile)
สร้างอินสแตนซ์ ImageSegmenter
จาก ImageSegmenter.ImageSegmenterOptions
เริ่มต้น
พารามิเตอร์
modelFile | ตัวอย่าง File แบบจำลองการแบ่งส่วน |
---|
ขว้าง
IOข้อยกเว้น | หากมีข้อผิดพลาด I/O เกิดขึ้นเมื่อโหลดโมเดล tflite |
---|---|
ข้อยกเว้นอาร์กิวเมนต์ที่ผิดกฎหมาย | ถ้าอาร์กิวเมนต์ไม่ถูกต้อง |
IllegalStateException | หากมีข้อผิดพลาดภายใน |
RuntimeException | หากมีข้อผิดพลาดที่ไม่ได้ระบุเป็นอย่างอื่น |
ImageSegmenter แบบคงที่สาธารณะ createFromFileAndOptions (ตัวเลือก ไฟล์ modelFile, ImageSegmenter.ImageSegmenterOptions )
สร้างอินสแตนซ์ ImageSegmenter
จาก ImageSegmenter.ImageSegmenterOptions
พารามิเตอร์
modelFile | ตัวอย่าง File แบบจำลองการแบ่งส่วน |
---|---|
ตัวเลือก |
ขว้าง
IOข้อยกเว้น | หากมีข้อผิดพลาด I/O เกิดขึ้นเมื่อโหลดโมเดล tflite |
---|---|
ข้อยกเว้นอาร์กิวเมนต์ที่ผิดกฎหมาย | ถ้าอาร์กิวเมนต์ไม่ถูกต้อง |
IllegalStateException | หากมีข้อผิดพลาดภายใน |
RuntimeException | หากมีข้อผิดพลาดที่ไม่ได้ระบุเป็นอย่างอื่น |
ImageSegmenter แบบคงที่สาธารณะ createFromFileAndOptions (บริบทบริบท, String modelPath, ตัวเลือก ImageSegmenter.ImageSegmenterOptions )
สร้างอินสแตนซ์ ImageSegmenter
จาก ImageSegmenter.ImageSegmenterOptions
พารามิเตอร์
บริบท | |
---|---|
โมเดลพาธ | เส้นทางของโมเดลการแบ่งส่วนพร้อมข้อมูลเมตาในเนื้อหา |
ตัวเลือก |
ขว้าง
IOข้อยกเว้น | หากมีข้อผิดพลาด I/O เกิดขึ้นเมื่อโหลดโมเดล tflite |
---|---|
ข้อยกเว้นอาร์กิวเมนต์ที่ผิดกฎหมาย | ถ้าอาร์กิวเมนต์ไม่ถูกต้อง |
IllegalStateException | หากมีข้อผิดพลาดภายใน |
RuntimeException | หากมีข้อผิดพลาดที่ไม่ได้ระบุเป็นอย่างอื่น |
รายการ สาธารณะ < การแบ่ง ส่วน> เซ็กเมนต์ (frameBufferHandle แบบยาว, ตัวเลือก ImageProcessingOptions )
พารามิเตอร์
frameBufferHandle | |
---|---|
ตัวเลือก |
รายการ สาธารณะ < การแบ่งส่วน > ส่วน (ภาพ TensorImage )
ดำเนินการแบ่งส่วนตามจริงในภาพที่จัดให้
ImageSegmenter
รองรับประเภทพื้นที่สี TensorImage
ต่อไปนี้:
พารามิเตอร์
ภาพ | วัตถุ UINT8 TensorImage ที่แสดงภาพ RGB หรือ YUV |
---|
การส่งคืน
- ผลลัพธ์ของการแบ่งส่วนภาพ โปรดทราบว่าในขณะนั้น องค์ประกอบ
Segmentation
ส่วนเดียวคาดว่าจะถูกส่งคืน ผลลัพธ์จะถูกจัดเก็บไว้ในList
สำหรับส่วนขยายในภายหลัง เช่น โมเดลการแบ่งส่วนอินสแตนซ์ ซึ่งอาจส่งคืนหนึ่งการแบ่งส่วนต่อออบเจ็กต์
ขว้าง
IllegalStateException | หากมีข้อผิดพลาดภายใน |
---|---|
RuntimeException | หากมีข้อผิดพลาดที่ไม่ได้ระบุเป็นอย่างอื่น |
ข้อยกเว้นอาร์กิวเมนต์ที่ผิดกฎหมาย | หากไม่รองรับประเภทปริภูมิสีของรูปภาพ |
รายการ สาธารณะ < การแบ่งส่วน > ส่วน (ภาพ MlImage )
ดำเนินการแบ่งส่วนจริงบน MlImage
ที่ให้มา
พารามิเตอร์
ภาพ | MlImage ที่จะแบ่งส่วน |
---|
การส่งคืน
- ผลลัพธ์ของการแบ่งส่วนภาพ โปรดทราบว่าในขณะนั้น องค์ประกอบ
Segmentation
ส่วนเดียวคาดว่าจะถูกส่งคืน ผลลัพธ์จะถูกจัดเก็บไว้ในList
สำหรับส่วนขยายในภายหลัง เช่น โมเดลการแบ่งส่วนอินสแตนซ์ ซึ่งอาจส่งคืนหนึ่งการแบ่งส่วนต่อออบเจ็กต์
ขว้าง
IllegalStateException | หากมีข้อผิดพลาดภายใน |
---|---|
RuntimeException | หากมีข้อผิดพลาดที่ไม่ได้ระบุเป็นอย่างอื่น |
ข้อยกเว้นอาร์กิวเมนต์ที่ผิดกฎหมาย | หากไม่รองรับประเภทการจัดเก็บหรือรูปแบบของรูปภาพ |
รายการ สาธารณะ < การแบ่งส่วน > ส่วน (รูปภาพ TensorImage , ตัวเลือก ImageProcessingOptions )
ดำเนินการแบ่งส่วนตามจริงบนรูปภาพที่ให้มาด้วย ImageProcessingOptions
ImageSegmenter
รองรับประเภทพื้นที่สี TensorImage
ต่อไปนี้:
ImageSegmenter
รองรับตัวเลือกต่อไปนี้:
- การหมุนภาพ (ผ่าน
ImageProcessingOptions.Builder.setOrientation(ImageProcessingOptions.Orientation)
) โดยค่าเริ่มต้นจะเป็นImageProcessingOptions.Orientation.TOP_LEFT
พารามิเตอร์
ภาพ | วัตถุ UINT8 TensorImage ที่แสดงภาพ RGB หรือ YUV |
---|---|
ตัวเลือก | ตัวเลือกจะกำหนดค่าวิธีประมวลผลภาพล่วงหน้า |
การส่งคืน
- ผลลัพธ์ของการแบ่งส่วนภาพ โปรดทราบว่าในขณะนั้น องค์ประกอบ
Segmentation
ส่วนเดียวคาดว่าจะถูกส่งคืน ผลลัพธ์จะถูกจัดเก็บไว้ในList
สำหรับส่วนขยายในภายหลัง เช่น โมเดลการแบ่งส่วนอินสแตนซ์ ซึ่งอาจส่งคืนหนึ่งการแบ่งส่วนต่อออบเจ็กต์
ขว้าง
IllegalStateException | หากมีข้อผิดพลาดภายใน |
---|---|
RuntimeException | หากมีข้อผิดพลาดที่ไม่ได้ระบุเป็นอย่างอื่น |
ข้อยกเว้นอาร์กิวเมนต์ที่ผิดกฎหมาย | หากไม่รองรับประเภทปริภูมิสีของรูปภาพ |
รายการ สาธารณะ < การแบ่งส่วน > ส่วน (รูปภาพ MlImage , ตัวเลือก ImageProcessingOptions )
ดำเนินการแบ่งส่วนจริงบน MlImage
ที่ให้มาพร้อมกับ ImageProcessingOptions
ImageSegmenter
รองรับตัวเลือกต่อไปนี้:
- การหมุนภาพ (ผ่าน
ImageProcessingOptions.Builder.setOrientation(ImageProcessingOptions.Orientation)
) โดยค่าเริ่มต้นจะเป็นImageProcessingOptions.Orientation.TOP_LEFT
MlImage.getRotation()
ไม่มีประสิทธิผล
พารามิเตอร์
ภาพ | MlImage ที่จะแบ่งส่วน |
---|---|
ตัวเลือก | ตัวเลือกจะกำหนดค่าวิธีประมวลผลภาพล่วงหน้า |
การส่งคืน
- ผลลัพธ์ของการแบ่งส่วนภาพ โปรดทราบว่าในขณะนั้น องค์ประกอบ
Segmentation
ส่วนเดียวคาดว่าจะถูกส่งคืน ผลลัพธ์จะถูกจัดเก็บไว้ในList
สำหรับส่วนขยายในภายหลัง เช่น โมเดลการแบ่งส่วนอินสแตนซ์ ซึ่งอาจส่งคืนหนึ่งการแบ่งส่วนต่อออบเจ็กต์
ขว้าง
IllegalStateException | หากมีข้อผิดพลาดภายใน |
---|---|
RuntimeException | หากมีข้อผิดพลาดที่ไม่ได้ระบุเป็นอย่างอื่น |
ข้อยกเว้นอาร์กิวเมนต์ที่ผิดกฎหมาย | หากไม่รองรับประเภทปริภูมิสีของรูปภาพ |