ImageProcessor

فئة عامة ImageProcessor

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 أداة إنشاء إنشاء معالجة الصور، والتي يمكن تنفيذها لاحقًا

الطرق العامة

RectF
inverseTransform(RectF rect, int enterImageHeight, int enterImage width)
تحوِّل هذه الدالة مستطيلاً من نظام الإحداثيات لصورة النتيجة إلى صورة الإدخال.
PointF
inverseTransform(نقطة PointF، وint enterImageHeight، وint enterImage width)
تحوِّل نقطة من نظام الإحداثيات لصورة النتيجة إلى صورة الإدخال.
TensorImage
process(صورة TensorImage)
معالجة كائن TensorImage باستخدام TensorOperator المعدّ.
void
updateNumberOfRotations(العدد الصحيح)
تعمل على تعديل عدد عمليات التدوير لأول Rot90Op في حملة ImageProcessor.
متزامن فارغ
updateNumberOfRotations(int k، موضع ورود عدد صحيح)
تعمل هذه السياسة على تعديل عدد عمليات التدوير التي تخصّ Rot90Op المحدّد من خلال occurrence في ImageProcessor.

الطرق المكتسَبة

الطرق العامة

public RectF inverseTransform (RectF rect وint revenueImageHeight وint enterImage width)

تحوِّل هذه الدالة مستطيلاً من نظام الإحداثيات لصورة النتيجة إلى صورة الإدخال.

المَعلمات
rect المستطيل من نظام إحداثيات النتيجة.
inputImageHeight ارتفاع صورة الإدخال.
inputImageWidth عرض صورة الإدخال.
المرتجعات
  • المستطيل مع الإحداثيات من نظام الإحداثيات للصورة المدخلة.

public PointF inverseTransform (PointF points, int insertImageHeight, int revenueImage width)

تحوِّل نقطة من نظام الإحداثيات لصورة النتيجة إلى صورة الإدخال.

المَعلمات
نقطة واحدة من نظام الإحداثيات الناتج.
inputImageHeight ارتفاع صورة الإدخال.
inputImageWidth عرض صورة الإدخال.
المرتجعات
  • النقطة التي بها الإحداثيات من نظام الإحداثيات للصورة المدخلة.

public TensorImage process (TensorImage)

معالجة كائن TensorImage باستخدام TensorOperator المعدّ.

المَعلمات
صورة
الرميات
IllegalArgumentException إذا لم تكن الصورة مدعومة من قِبل أي عملية.

عام إلغاء updateNumberOfRotations (int k)

تعمل على تعديل عدد عمليات التدوير لأول Rot90Op في حملة ImageProcessor.

تحذير: هذه الطريقة غير آمنة. يجب حماية تعديل عدد عمليات التدوير ثم معالجة الصور (باستخدام SequentialProcessor.process(T)) من الوصول المتزامن مع المزامنة الإضافية.

المَعلمات
k عدد الدورات
الرميات
IllegalStateException إذا لم تتم إضافة "Rot90Op" إلى المساحة "ImageProcessor" هذه

عام فارغ متزامن updateNumberOfRotations (int k, int لحدوث)

تعمل هذه السياسة على تعديل عدد عمليات التدوير التي تخصّ Rot90Op المحدّد من خلال occurrence في ImageProcessor.

تحذير: هذه الطريقة غير آمنة. يجب حماية تعديل عدد عمليات التدوير ثم معالجة الصور (باستخدام SequentialProcessor.process(T)) من الوصول المتزامن مع المزامنة الإضافية.

المَعلمات
k عدد الدورات
موضع الورود فهرس Rot90Op في ImageProcessor. على سبيل المثال، إذا كانت قيمة Rot90Op الثانية بحاجة إلى تعديل، يجب ضبط occurrence على 1.
الرميات
IndexOutOfBoundsException إذا كانت قيمة occurrence سالبة أو لا تقل عن عدد Rot90Op في ImageProcessor هذه
IllegalStateException إذا لم تتم إضافة "Rot90Op" إلى المساحة "ImageProcessor" هذه