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 ה-Builder ליצירת ImageProcessor, שיכול להתבצע מאוחר יותר.

שיטות ציבוריות

RectF
inverseTransform (RectF rect, int inputImageHeight, int inputImageWidth)
הופך מלבן ממערכת הקואורדינטות של תמונת התוצאה חזרה לזו של תמונת הקלט.
PointF
inverseTransform (נקודת PointF, int inputImageHeight, int inputImageWidth)
הופך נקודה ממערכת הקואורדינטות של תמונת התוצאה חזרה לזו של תמונת הקלט.
TensorImage
תהליך (תמונה של TensorImage )
מעבד אובייקט TensorImage עם TensorOperator מוכן.
בָּטֵל
updateNumberOfRotations (int k)
מעדכן את מספר הסיבובים עבור Rot90Op הראשון ב- ImageProcessor זה.
ריק מסונכרן
updateNumberOfRotations (int k, int מופע)
מעדכן את מספר הסיבובים עבור Rot90Op שצוין לפי occurrence ב- ImageProcessor זה.

שיטות בירושה

שיטות ציבוריות

public RectF inverseTransform (RectF rect, int inputImageHeight, int inputImageWidth)

הופך מלבן ממערכת הקואורדינטות של תמונת התוצאה חזרה לזו של תמונת הקלט.

פרמטרים
לתקן המלבן ממערכת הקואורדינטות של התוצאה.
inputImageHeight גובה תמונת הקלט.
inputImageWidth רוחב תמונת הקלט.
החזרות
  • המלבן עם הקואורדינטות ממערכת הקואורדינטות של תמונת הקלט.

Public PointF inverseTransform (נקודת PointF, int inputImageHeight, int inputImageWidth)

הופך נקודה ממערכת הקואורדינטות של תמונת התוצאה חזרה לזו של תמונת הקלט.

פרמטרים
נְקוּדָה הנקודה ממערכת קואורדינטות התוצאה.
inputImageHeight גובה תמונת הקלט.
inputImageWidth רוחב תמונת הקלט.
החזרות
  • הנקודה עם הקואורדינטות ממערכת הקואורדינטות של תמונת הקלט.

תהליך TensorImage ציבורי (תמונה של TensorImage )

מעבד אובייקט TensorImage עם TensorOperator מוכן.

פרמטרים
תמונה
זורק
חריג טיעון לא חוקי אם התמונה אינה נתמכת על ידי אופציה כלשהי.

public void updateNumberOfRotations (int k)

מעדכן את מספר הסיבובים עבור Rot90Op הראשון ב- ImageProcessor זה.

אזהרה: שיטה זו אינה בטוחה בחוט. עדכון מספר הסיבובים ולאחר מכן עיבוד תמונות (באמצעות SequentialProcessor.process(T) ) חייבים להיות מוגנים מפני גישה במקביל עם סנכרון נוסף.

פרמטרים
ק מספר הסיבובים
זורק
חריגה של מדינה בלתי חוקית אם Rot90Op לא התווסף ל- ImageProcessor זה

עדכון ריק פומבי מסונכרן NumberOfRotations (int k, int מופע)

מעדכן את מספר הסיבובים עבור Rot90Op שצוין לפי occurrence ב- ImageProcessor זה.

אזהרה: שיטה זו אינה בטוחה בחוט. עדכון מספר הסיבובים ולאחר מכן עיבוד תמונות (באמצעות SequentialProcessor.process(T) ) חייבים להיות מוגנים מפני גישה במקביל עם סנכרון נוסף.

פרמטרים
ק מספר הסיבובים
הִתרַחֲשׁוּת האינדקס של Rot90Op perticular ב- ImageProcessor זה. לדוגמה, אם צריך לעדכן את ה- Rot90Op השני, יש להגדיר occurrence ל-1.
זורק
IndexOutOfBoundsException אם occurrence שלילית או אינה קטנה ממספר Rot90Op ImageProcessor זה
חריגה של מדינה בלתי חוקית אם Rot90Op לא התווסף ל- ImageProcessor זה