ImageProcessor یک کلاس کمکی برای پیش پردازش و پس پردازش TensorImage است. می تواند با اجرای زنجیره ای از ImageOperator یک TensorImage به دیگری تبدیل کند.
مثال استفاده:
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 جداگانه ایجاد کنید. If multiple threads access a ImageProcessor concurrently, it must be synchronized externally.
کلاس های تو در تو
| کلاس | ImageProcessor.Builder | سازنده برای ایجاد یک ImageProcessor، که می تواند بعداً اجرا شود. | |
روش های عمومی
| RectF | inverseTransform (RectF rect، int inputImageHeight، int inputImageWidth) یک مستطیل را از سیستم مختصات تصویر نتیجه به یکی از تصویر ورودی تبدیل می کند. |
| نقطه اف | inverseTransform (نقطه PointF، int inputImageHeight، int inputImageWidth) یک نقطه را از سیستم مختصات تصویر نتیجه به نقطه تصویر ورودی تبدیل می کند. |
| TensorImage | |
| باطل | updateNumberOfRotations (int k) تعداد چرخش ها را برای اولین Rot90Op در این ImageProcessor به روز می کند. |
| خالی هماهنگ شده | updateNumberOfRotations (int k، int وقوع) |
روش های ارثی
روش های عمومی
عمومی RectF inverseTransform (RectF rect، int inputImageHeight، int inputImageWidth)
یک مستطیل را از سیستم مختصات تصویر نتیجه به یکی از تصویر ورودی تبدیل می کند.
پارامترها
| راست | مستطیل حاصل از سیستم مختصات. |
|---|---|
| inputImageHeight | ارتفاع تصویر ورودی |
| inputImageWidth | عرض تصویر ورودی |
برمی گرداند
- مستطیل با مختصات سیستم مختصات تصویر ورودی.
عمومی PointF inverseTransform (نقطه PointF، int inputImageHeight، int inputImageWidth)
یک نقطه را از سیستم مختصات تصویر نتیجه به نقطه تصویر ورودی تبدیل می کند.
پارامترها
| نقطه | نقطه از سیستم مختصات نتیجه. |
|---|---|
| inputImageHeight | ارتفاع تصویر ورودی |
| inputImageWidth | عرض تصویر ورودی |
برمی گرداند
- نقطه با مختصات از سیستم مختصات تصویر ورودی.
فرآیند عمومی TensorImage (تصویر TensorImage )
یک شی TensorImage با TensorOperator آماده پردازش می کند.
پارامترها
| تصویر |
|---|
پرتاب می کند
| IllegalArgumentException | اگر تصویر توسط هیچ عملیاتی پشتیبانی نمی شود. |
|---|
public void updateNumberOfRotations (int k)
تعداد چرخش ها را برای اولین Rot90Op در این ImageProcessor به روز می کند.
هشدار: این روش ایمن نیست . به روز رسانی تعداد چرخش ها و سپس پردازش تصاویر (با استفاده از SequentialProcessor.process(T) ) باید از دسترسی همزمان با همگام سازی اضافی محافظت شود.
پارامترها
| ک | تعداد چرخش ها |
|---|
پرتاب می کند
| IllegalStateException | اگر Rot90Op به این ImageProcessor اضافه نشده باشد |
|---|
به روز رسانی خالی همگام سازی شده عمومی NumberOfRotations (int k، int وقوع)
تعداد چرخش های Rot90Op را که بر اساس occurrence در این ImageProcessor مشخص شده است، به روز می کند.
هشدار: این روش ایمن نیست . به روز رسانی تعداد چرخش ها و سپس پردازش تصاویر (با استفاده از SequentialProcessor.process(T) ) باید از دسترسی همزمان با همگام سازی اضافی محافظت شود.
پارامترها
| ک | تعداد چرخش ها |
|---|---|
| وقوع | the index of perticular Rot90Op in this ImageProcessor . به عنوان مثال، اگر Rot90Op دوم نیاز به به روز رسانی داشته باشد، occurrence باید روی 1 تنظیم شود. |
پرتاب می کند
| IndexOutOfBoundsException | اگر occurrence منفی باشد یا کمتر از تعداد Rot90Op در این ImageProcessor نباشد |
|---|---|
| IllegalStateException | اگر Rot90Op به این ImageProcessor اضافه نشده باشد |