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 (RectF rect, int inputImageHeight, int inputImageWidth) เปลี่ยนรูปสี่เหลี่ยมผืนผ้าจากระบบพิกัดของรูปภาพผลลัพธ์กลับไปเป็นรูปภาพอินพุตอันใดอันหนึ่ง |
PointF | inverseTransform (จุด PointF, int inputImageHeight, int inputImageWidth) เปลี่ยนจุดจากระบบพิกัดของรูปภาพผลลัพธ์กลับไปเป็นรูปภาพอินพุตอันใดอันหนึ่ง |
เทนเซอร์อิมเมจ | |
โมฆะ | อัปเดตจำนวนการหมุน (int k) อัปเดตจำนวนการหมุนสำหรับ Rot90Op ตัวแรกใน ImageProcessor นี้ |
ซิงโครไนซ์เป็นโมฆะ | updateNumberOfRotations (int k, การเกิด int) |
วิธีการสืบทอด
วิธีการสาธารณะ
สาธารณะ RectF inverseTransform (RectF rect, int inputImageHeight, int inputImageWidth)
เปลี่ยนรูปสี่เหลี่ยมผืนผ้าจากระบบพิกัดของรูปภาพผลลัพธ์กลับไปเป็นรูปภาพอินพุตอันใดอันหนึ่ง
พารามิเตอร์
ตรง | สี่เหลี่ยมจากระบบพิกัดผลลัพธ์ |
---|---|
อินพุตImageHeight | ความสูงของภาพอินพุต |
อินพุตImageWidth | ความกว้างของภาพอินพุต |
คืนสินค้า
- สี่เหลี่ยมที่มีพิกัดจากระบบพิกัดของภาพที่ป้อนเข้า
สาธารณะ PointF inverseTransform (จุด PointF, int inputImageHeight, int inputImageWidth)
เปลี่ยนจุดจากระบบพิกัดของรูปภาพผลลัพธ์กลับไปเป็นรูปภาพอินพุตอันใดอันหนึ่ง
พารามิเตอร์
จุด | จุดจากระบบพิกัดผลลัพธ์ |
---|---|
อินพุตImageHeight | ความสูงของภาพอินพุต |
อินพุตImageWidth | ความกว้างของภาพอินพุต |
คืนสินค้า
- จุดที่มีพิกัดจากระบบพิกัดของภาพที่ป้อนเข้า
กระบวนการ TensorImage สาธารณะ (ภาพ TensorImage )
ประมวลผลวัตถุ TensorImage
ด้วย TensorOperator
ที่เตรียมไว้
พารามิเตอร์
ภาพ |
---|
ขว้าง
IllegalArgumentException | หากภาพไม่ได้รับการสนับสนุนจาก op ใด ๆ |
---|
โมฆะสาธารณะ updateNumberOfRotations (int k)
อัปเดตจำนวนการหมุนสำหรับ Rot90Op
ตัวแรกใน ImageProcessor
นี้
คำเตือน: วิธีนี้ ไม่ ปลอดภัยสำหรับเธรด การอัพเดตจำนวนการหมุนแล้วประมวลผลภาพ (โดยใช้ SequentialProcessor.process(T)
) จะต้องได้รับการปกป้องจากการเข้าถึงพร้อมกันด้วยการซิงโครไนซ์เพิ่มเติม
พารามิเตอร์
k | จำนวนรอบ |
---|
ขว้าง
IllegalStateException | หากไม่ได้เพิ่ม Rot90Op ลงใน ImageProcessor นี้ |
---|
โมฆะซิงโครไนซ์สาธารณะ updateNumberOfRotations (int k, int เกิดขึ้น)
อัปเดตจำนวนการหมุนสำหรับ Rot90Op
ที่ระบุโดย occurrence
ใน ImageProcessor
นี้
คำเตือน: วิธีนี้ ไม่ ปลอดภัยสำหรับเธรด การอัพเดตจำนวนการหมุนแล้วประมวลผลภาพ (โดยใช้ SequentialProcessor.process(T)
) จะต้องได้รับการปกป้องจากการเข้าถึงพร้อมกันด้วยการซิงโครไนซ์เพิ่มเติม
พารามิเตอร์
k | จำนวนรอบ |
---|---|
เหตุการณ์ | ดัชนีของ Rot90Op perticular ใน ImageProcessor นี้ ตัวอย่างเช่น หากจำเป็นต้องอัปเดต Rot90Op ตัวที่สอง การ occurrence ควรตั้งค่าเป็น 1 |
ขว้าง
IndexOutOfBoundsException | ถ้า occurrence เป็นลบหรือน้อยกว่าจำนวน Rot90Op ใน ImageProcessor นี้ |
---|---|
IllegalStateException | หากไม่ได้เพิ่ม Rot90Op ลงใน ImageProcessor นี้ |