จำแนกประเภทรูปภาพ
API ต้องการโมเดล TFLite ที่มีข้อมูลเมตาของโมเดล TFLite ที่ไม่บังคับ แต่ขอแนะนำอย่างยิ่ง
API รองรับโมเดลที่มี Tensor อินพุตอิมเมจ 1 รายการและ Tensor เอาต์พุตอย่างน้อย 1 รายการ หากต้องการเจาะจงยิ่งขึ้น โปรดดูข้อกำหนดด้านล่าง
- Tensor อิมเมจ (
kTfLiteUInt8/kTfLiteFloat32)- อินพุตรูปภาพของขนาด
[batch x height x width x channels] - ไม่รองรับการอนุมานกลุ่ม (ต้องมี
batchเป็น 1) - รองรับเฉพาะอินพุต RGB เท่านั้น (ต้องมี
channelsเป็น 3) - หากประเภทคือ kTfLiteFloat32 ต้องแนบ การทำให้เป็นมาตรฐาน กับข้อมูลเมตาเพื่อทำให้อินพุตเป็นมาตรฐาน
- อินพุตรูปภาพของขนาด
- Tensor เอาต์พุตอย่างน้อย 1 รายการ (
kTfLiteUInt8/kTfLiteFloat32) ที่มี:- คลาส
Nและมิติข้อมูล 2 หรือ 4 รายการ เช่น[1 x N]หรือ[1 x 1 x 1 x N] - แมปป้ายกำกับซึ่งไม่บังคับ (แต่แนะนำ) เป็น MetricFile-s ที่มีประเภท TENSOR_AXIS_ป้ายกำกับ ซึ่งมีป้ายกำกับ 1 ป้ายต่อบรรทัด ระบบจะใช้ EngageFile ดังกล่าวรายการแรก (หากมี) เพื่อกรอกข้อมูลในช่อง
class_nameของผลลัพธ์ ระบบจะกรอกข้อมูลในช่องdisplay_nameจาก relatedFile (หากมี) ซึ่งมีภาษาตรงกับช่องdisplay_names_localeของImageClassifierOptionsที่ใช้ในเวลาที่สร้าง (ค่าเริ่มต้นคือ "en" เช่น ภาษาอังกฤษ) หากไม่มีตัวเลือกใดเลย ระบบจะเติมเฉพาะช่องindexของผลการค้นหา - คุณจะแนบการปรับเทียบคะแนนที่ไม่บังคับได้โดยใช้ ScoreCalibrationOptions และ EngageFile ที่มีประเภท TENSOR_AXIS_SCORE_CALIBRATION ดูรายละเอียดเพิ่มเติมได้ที่ metadata_schema.fbs
- คลาส
ดูตัวอย่างของโมเดลดังกล่าวได้ที่ TensorFlow Hub
ชั้นเรียนที่ซ้อนกัน
| คลาส | ImageClassifier.ImageClassifierOptions | ตัวเลือกสำหรับการตั้งค่าและImageClassifier |
|
วิธีการสาธารณะ
| ImageClassifierResult | |
| ImageClassifierResult |
classify(รูปภาพ MPImage, ImageProcessingOptions imageProcessingOptions)
จำแนกประเภทรูปภาพเดียวที่ให้มา
|
| void |
classifyAsync(รูปภาพ MPImage, ImageProcessingOptions imageProcessingOptions, Long timestampMs)
ส่งข้อมูลรูปภาพสดเพื่อทำการแยกประเภท และผลการค้นหาจะดูได้ใน
OutputHandler.ResultListener ที่ให้ไว้ใน ImageClassifier.ImageClassifierOptions |
| void |
classifyAsync(รูปภาพ MPImage, timestampMs นาน)
ส่งข้อมูลภาพสดเพื่อจำแนกประเภทด้วยตัวเลือกการประมวลผลรูปภาพเริ่มต้น เช่น
|
| ImageClassifierResult |
classifyForVideo(รูปภาพ MPImage, timestampMs นาน)
จำแนกประเภทในเฟรมวิดีโอที่ให้มาด้วยตัวเลือกการประมวลผลรูปภาพเริ่มต้น เช่น
|
| ImageClassifierResult |
classifyForVideo(รูปภาพ MPImage, ImageProcessingOptions imageProcessingOptions, Long timestampMs)
จำแนกประเภทในเฟรมวิดีโอที่ให้มา
|
| ภาพนิ่ง ImageClassifier |
createFromBuffer(บริบทบริบท, ByteBuffer modelBuffer)
สร้างอินสแตนซ์
ImageClassifier จากบัฟเฟอร์โมเดลและ ImageClassifier.ImageClassifierOptions เริ่มต้น |
| ภาพนิ่ง ImageClassifier |
createFromFile(บริบทบริบท, String modelPath)
สร้างอินสแตนซ์
ImageClassifier จากไฟล์โมเดลและ ImageClassifier.ImageClassifierOptions เริ่มต้น |
| ภาพนิ่ง ImageClassifier |
createFromFile(บริบทบริบท, ไฟล์ modelFile)
สร้างอินสแตนซ์
ImageClassifier จากไฟล์โมเดลและ ImageClassifier.ImageClassifierOptions เริ่มต้น |
| ภาพนิ่ง ImageClassifier |
createFromOptions(บริบทบริบท, ตัวเลือก ImageClassifier.ImageClassifierOptions)
สร้างอินสแตนซ์
ImageClassifier จากอินสแตนซ์ ImageClassifier.ImageClassifierOptions |
วิธีการที่รับช่วงมา
วิธีการสาธารณะ
สาธารณะ ImageClassifierResult แยกประเภท (รูปภาพ MPImage)
ทำการแยกประเภทในรูปภาพเดียวที่ให้มาด้วยตัวเลือกการประมวลผลรูปภาพเริ่มต้น กล่าวคือ ใช้รูปภาพทั้งรูปเป็นภูมิภาคที่สนใจและไม่ใช้การหมุนใดๆ ใช้วิธีนี้เฉพาะเมื่อมีการสร้าง ImageClassifier ด้วย ERROR(/RunningMode.IMAGE) เท่านั้น
ImageClassifier รองรับพื้นที่สีประเภทต่อไปนี้
พารามิเตอร์
| รูปภาพ | ออบเจ็กต์ MediaPipe MPImage สำหรับการประมวลผล |
|---|
การขว้าง
| ในกรณีที่เกิดข้อผิดพลาดภายใน |
สาธารณะ ImageClassifierResult แยกประเภท (รูปภาพ MPImage, ImageProcessingOptions imageProcessingOptions)
จำแนกประเภทรูปภาพเดียวที่ให้มา ใช้วิธีนี้เฉพาะเมื่อมีการสร้าง ImageClassifier ด้วย ERROR(/RunningMode.IMAGE) เท่านั้น
ImageClassifier รองรับพื้นที่สีประเภทต่อไปนี้
พารามิเตอร์
| รูปภาพ | ออบเจ็กต์ MediaPipe MPImage สำหรับการประมวลผล |
|---|---|
| imageProcessingOptions | ImageProcessingOptions จะระบุวิธีประมวลผลรูปภาพอินพุตก่อนเรียกใช้การอนุมาน |
การขว้าง
| ในกรณีที่เกิดข้อผิดพลาดภายใน |
สาธารณะ void classifyAsync (รูปภาพ MPImage, ImageProcessingOptions imageProcessingOptions, Long timestampMs)
ส่งข้อมูลรูปภาพสดเพื่อทำการแยกประเภท และผลการค้นหาจะดูได้ใน OutputHandler.ResultListener ที่ให้ไว้ใน ImageClassifier.ImageClassifierOptions ใช้วิธีนี้เมื่อมีการสร้าง ImageClassifier ด้วย ERROR(/RunningMode.LIVE_STREAM) เท่านั้น
ต้องระบุการประทับเวลา (เป็นมิลลิวินาที) เพื่อระบุว่ามีการส่งรูปภาพอินพุตไปยังตัวตรวจจับวัตถุเมื่อใด การประทับเวลาอินพุตต้องเพิ่มขึ้นแบบโมนาเท่านั้น
ImageClassifier รองรับพื้นที่สีประเภทต่อไปนี้
พารามิเตอร์
| รูปภาพ | ออบเจ็กต์ MediaPipe MPImage สำหรับการประมวลผล |
|---|---|
| imageProcessingOptions | ImageProcessingOptions จะระบุวิธีประมวลผลรูปภาพอินพุตก่อนเรียกใช้การอนุมาน |
| timestampMs | การประทับเวลาอินพุต (เป็นมิลลิวินาที) |
การขว้าง
| ในกรณีที่เกิดข้อผิดพลาดภายใน |
สาธารณะ void classifyAsync (รูปภาพ MPImage, การประทับเวลายาว Ms)
ส่งข้อมูลรูปภาพสดเพื่อจำแนกประเภทด้วยตัวเลือกการประมวลผลรูปภาพเริ่มต้น กล่าวคือ ใช้รูปภาพทั้งรูปเป็นภูมิภาคที่สนใจและไม่มีการใช้การหมุนใดๆ และผลการค้นหาจะพร้อมใช้งานผ่าน OutputHandler.ResultListener ที่ระบุไว้ใน ImageClassifier.ImageClassifierOptions ใช้วิธีนี้เฉพาะเมื่อมีการสร้าง ImageClassifier ด้วย ERROR(/RunningMode.LIVE_STREAM)
ต้องระบุการประทับเวลา (เป็นมิลลิวินาที) เพื่อระบุว่ามีการส่งรูปภาพอินพุตไปยังตัวตรวจจับวัตถุเมื่อใด การประทับเวลาอินพุตต้องเพิ่มขึ้นแบบโมนาเท่านั้น
ImageClassifier รองรับพื้นที่สีประเภทต่อไปนี้
พารามิเตอร์
| รูปภาพ | ออบเจ็กต์ MediaPipe MPImage สำหรับการประมวลผล |
|---|---|
| timestampMs | การประทับเวลาอินพุต (เป็นมิลลิวินาที) |
การขว้าง
| ในกรณีที่เกิดข้อผิดพลาดภายใน |
สาธารณะ ImageClassifierResult classifyForVideo (MPImage, การประทับเวลายาว Ms)
ทำการแยกประเภทในเฟรมวิดีโอที่ระบุด้วยตัวเลือกการประมวลผลรูปภาพเริ่มต้น กล่าวคือ ใช้รูปภาพทั้งรูปเป็นภูมิภาคที่สนใจและไม่ใช้การหมุนใดๆ ใช้วิธีนี้เฉพาะเมื่อมีการสร้าง ImageClassifier ด้วย ERROR(/RunningMode.VIDEO) เท่านั้น
และระบุการประทับเวลาของเฟรมวิดีโอ (เป็นมิลลิวินาที) การประทับเวลาอินพุตต้องเพิ่มขึ้นทีละน้อย
ImageClassifier รองรับพื้นที่สีประเภทต่อไปนี้
พารามิเตอร์
| รูปภาพ | ออบเจ็กต์ MediaPipe MPImage สำหรับการประมวลผล |
|---|---|
| timestampMs | การประทับเวลาอินพุต (เป็นมิลลิวินาที) |
การขว้าง
| ในกรณีที่เกิดข้อผิดพลาดภายใน |
สาธารณะ ImageClassifierResult classifyForVideo (รูปภาพ MPImage, ImageProcessingOptions imageProcessingOptions, Long timestampMs)
จำแนกประเภทในเฟรมวิดีโอที่ให้มา ใช้วิธีนี้เฉพาะเมื่อมีการสร้าง ImageClassifier ด้วย ERROR(/RunningMode.VIDEO) เท่านั้น
และระบุการประทับเวลาของเฟรมวิดีโอ (เป็นมิลลิวินาที) การประทับเวลาอินพุตต้องเพิ่มขึ้นทีละน้อย
ImageClassifier รองรับพื้นที่สีประเภทต่อไปนี้
พารามิเตอร์
| รูปภาพ | ออบเจ็กต์ MediaPipe MPImage สำหรับการประมวลผล |
|---|---|
| imageProcessingOptions | ImageProcessingOptions จะระบุวิธีประมวลผลรูปภาพอินพุตก่อนเรียกใช้การอนุมาน |
| timestampMs | การประทับเวลาอินพุต (เป็นมิลลิวินาที) |
การขว้าง
| ในกรณีที่เกิดข้อผิดพลาดภายใน |
สาธารณะ คงที่ ImageClassifier createFromBuffer (บริบทบริบท, ByteBuffer modelBuffer)
สร้างอินสแตนซ์ ImageClassifier จากบัฟเฟอร์โมเดลและ ImageClassifier.ImageClassifierOptions เริ่มต้น
พารามิเตอร์
| บริบท | Android ERROR(/Context) |
|---|---|
| modelBuffer | ByteBuffer โดยตรงหรือ ERROR(/MappedByteBuffer) ของโมเดลการจัดประเภท |
การขว้าง
หากเกิดข้อผิดพลาดระหว่างการสร้าง ImageClassifier
|
สาธารณะ คงที่ ImageClassifier createFromFile (บริบทบริบท, String modelPath)
สร้างอินสแตนซ์ ImageClassifier จากไฟล์โมเดลและ ImageClassifier.ImageClassifierOptions เริ่มต้น
พารามิเตอร์
| บริบท | Android ERROR(/Context) |
|---|---|
| modelPath | ไปยังโมเดลการจัดประเภทในเนื้อหา |
การขว้าง
หากเกิดข้อผิดพลาดระหว่างการสร้าง ImageClassifier
|
สาธารณะ คงที่ ImageClassifier createFromFile (บริบทบริบท, ไฟล์ modelFile)
สร้างอินสแตนซ์ ImageClassifier จากไฟล์โมเดลและ ImageClassifier.ImageClassifierOptions เริ่มต้น
พารามิเตอร์
| บริบท | Android ERROR(/Context) |
|---|---|
| modelFile | อินสแตนซ์โมเดลการแยกประเภท File |
การขว้าง
| IOException | หากเกิดข้อผิดพลาด I/O เมื่อเปิดไฟล์โมเดล tflite |
|---|---|
หากเกิดข้อผิดพลาดระหว่างการสร้าง ImageClassifier
|
สาธารณะ คงที่ ImageClassifier createFromOptions (บริบทบริบท, ตัวเลือก ImageClassifier.ImageClassifierOptions)
สร้างอินสแตนซ์ ImageClassifier จากอินสแตนซ์ ImageClassifier.ImageClassifierOptions
พารามิเตอร์
| บริบท | Android ERROR(/Context) |
|---|---|
| ตัวเลือก | อินสแตนซ์ ImageClassifier.ImageClassifierOptions |
การขว้าง
หากเกิดข้อผิดพลาดระหว่างการสร้าง ImageClassifier
|