ImageProcessor คือคลาสตัวช่วยสำหรับการประมวลผลล่วงหน้าและหลังการประมวลผล TensorImage
ทั้งนี้
อาจเปลี่ยน TensorImage
เป็นรายการอื่นโดยการเรียกใช้เชน ImageOperator
ตัวอย่างการใช้งาน:
ImageProcessor processor = new ImageProcessor.Builder() .add(new ResizeOp(224, 224, ResizeMethod.NEAREST_NEIGHBOR) .add(new Rot90Op()) .add(new NormalizeOp(127.5f, 127.5f)) .build(); TensorImage anotherTensorImage = processor.process(tensorImage);
คำเตือน: อินสแตนซ์ของ ImageProcessor
จะไม่ปลอดภัยสำหรับชุดข้อความเมื่อใช้ updateNumberOfRotations(int)
การอัปเดตจำนวนการหมุนและการประมวลผลภาพ (โดยใช้
SequentialProcessor.process(T)
) ต้องได้รับการป้องกันจากการเข้าถึงพร้อมกัน ขอแนะนำให้สร้าง
ImageProcessor
อินสแตนซ์สำหรับแต่ละชุดข้อความ หากมีชุดข้อความหลายรายการเข้าถึง ImageProcessor
พร้อมกัน จะต้องซิงค์ข้อมูลกับภายนอก
ชั้นเรียนที่ซ้อนกัน
คลาส | ImageProcessor.Builder | เครื่องมือสร้างสำหรับสร้าง ImageProcessor ซึ่งสามารถเรียกใช้ในภายหลังได้ |
วิธีการสาธารณะ
RectF |
inverseTransform(สี่เหลี่ยมรูปสี่เหลี่ยม, int InputImageHeight, int InputImageWidth)
เปลี่ยนรูปสี่เหลี่ยมผืนผ้าจากระบบพิกัดของรูปภาพผลลัพธ์กลับไปเป็นระบบอินพุต
รูปภาพ
|
PointF |
inverseTransform(จุด PointF, int InputImageHeight, int InputImageWidth)
เปลี่ยนจุดจากระบบพิกัดของรูปภาพผลลัพธ์กลับไปเป็นหนึ่งในอินพุต
รูปภาพ
|
TensorImage | |
เป็นโมฆะ |
updateNumberOfRotations(int k)
อัปเดตจำนวนการหมุนของ
Rot90Op แรกใน ImageProcessor นี้ |
ซิงค์แล้ว เป็นโมฆะ |
updateNumberOfRotations(int k, จำนวนรายการ)
|
เมธอดที่รับมา
วิธีการสาธารณะ
สาธารณะ RectF inverseTransform (RectF Reect, int InputImageHeight, int InputImageWidth)
เปลี่ยนรูปสี่เหลี่ยมผืนผ้าจากระบบพิกัดของรูปภาพผลลัพธ์กลับไปเป็นระบบอินพุต รูปภาพ
พารามิเตอร์
rect | สี่เหลี่ยมผืนผ้าจากระบบพิกัดผลลัพธ์ |
---|---|
inputImageHeight | ความสูงของรูปภาพที่ป้อน |
inputImageWidth | ความกว้างของรูปภาพที่ป้อน |
การคืนสินค้า
- รูปสี่เหลี่ยมผืนผ้าที่มีพิกัดจากระบบพิกัดของรูปภาพอินพุต
สาธารณะ PointF inverseTransform (จุด PointF, intinputImageHeight, int InputImageWidth)
เปลี่ยนจุดจากระบบพิกัดของรูปภาพผลลัพธ์กลับไปเป็นหนึ่งในอินพุต รูปภาพ
พารามิเตอร์
จุด | จุดจากระบบพิกัดผลลัพธ์ |
---|---|
inputImageHeight | ความสูงของรูปภาพที่ป้อน |
inputImageWidth | ความกว้างของรูปภาพที่ป้อน |
การคืนสินค้า
- จุดโดยใช้พิกัดจากระบบพิกัดของรูปภาพอินพุต
สาธารณะ TensorImage กระบวนการ (TensorImage)
ประมวลผลออบเจ็กต์ TensorImage
ด้วย TensorOperator
ที่เตรียมไว้
พารามิเตอร์
รูปภาพ |
---|
การขว้าง
IllegalArgumentException | หากการดำเนินการใดๆ ไม่รองรับรูปภาพดังกล่าว |
---|
สาธารณะ เป็นโมฆะ updateNumberOfRotations (int k)
อัปเดตจำนวนการหมุนของ Rot90Op
แรกใน ImageProcessor
นี้
คำเตือน: วิธีนี้ไม่ปลอดภัยสำหรับชุดข้อความ กำลังอัปเดตจำนวนการหมุนและ
การประมวลผลภาพ (โดยใช้ SequentialProcessor.process(T)
) จะต้องได้รับการปกป้องจากการเข้าถึงพร้อมกันกับ
การซิงค์เพิ่มเติม
พารามิเตอร์
k | จำนวนการหมุน |
---|
การขว้าง
IllegalStateException | หากไม่ได้เพิ่ม Rot90Op ลงใน ImageProcessor นี้
|
---|
สาธารณะ ซิงค์แล้ว เป็นโมฆะ updateNumberOfRotations (int k, ไม่ปรากฏ)
อัปเดตจำนวนการหมุนของ Rot90Op
ที่ระบุโดย occurrence
ใน
ImageProcessor
คำเตือน: วิธีนี้ไม่ปลอดภัยสำหรับชุดข้อความ กำลังอัปเดตจำนวนการหมุนและ
การประมวลผลภาพ (โดยใช้ SequentialProcessor.process(T)
) จะต้องได้รับการปกป้องจากการเข้าถึงพร้อมกันกับ
การซิงค์เพิ่มเติม
พารามิเตอร์
k | จำนวนการหมุน |
---|---|
ครั้ง | ดัชนีของ Rot90Op ที่เกี่ยวข้องใน ImageProcessor นี้ สำหรับ
ตัวอย่างเช่น หากต้องอัปเดต Rot90Op รายการที่ 2 occurrence ก็ควรจะเป็น
ตั้งค่าเป็น 1 |
การขว้าง
IndexOutOfBoundsException | หาก occurrence เป็นค่าลบหรือไม่น้อยกว่าค่า
จำนวนของ Rot90Op ใน ImageProcessor นี้ |
---|---|
IllegalStateException | หากไม่ได้เพิ่ม Rot90Op ลงใน ImageProcessor นี้
|