SampleDistortedBoundingBox

کلاس نهایی عمومی SampleDistortedBoundingBox

یک جعبه مرزی منفرد با تحریف تصادفی برای یک تصویر ایجاد کنید.

حاشیه‌نویسی‌های جعبه مرزی اغلب علاوه بر برچسب‌های حقیقت پایه در وظایف تشخیص تصویر یا محلی‌سازی شی ارائه می‌شوند. یک تکنیک رایج برای آموزش چنین سیستمی تحریف تصادفی یک تصویر در حالی که محتوای آن حفظ می شود، یعنی افزایش داده ها است. این Op یک محلی سازی تصادفی تحریف شده از یک شی را خروجی می دهد، به عنوان مثال جعبه محدود، با توجه به "اندازه_تصویر"، "جعبه_محدود" و یک سری محدودیت.

خروجی این Op یک جعبه محدود است که ممکن است برای برش تصویر اصلی استفاده شود. خروجی به صورت 3 تانسور برگردانده می شود: «begin»، «size» و «bboxes». 2 تانسور اول را می توان مستقیماً به tf.slice وارد کرد تا تصویر را برش دهد. دومی ممکن است به tf.image.draw_bounding_boxes ارائه شود تا بتوانید شکل جعبه مرزی را تجسم کنید.

جعبه‌های مرزبندی به‌عنوان «[y_min، x_min، y_max، x_max]» ارائه و برگردانده می‌شوند. مختصات جعبه مرزی نسبت به عرض و ارتفاع تصویر زیرین در «[0.0، 1.0]» شناور هستند.

به عنوان مثال،

# Generate a single distorted bounding box.
     begin, size, bbox_for_draw = tf.image.sample_distorted_bounding_box(
         tf.shape(image),
         bounding_boxes=bounding_boxes)
 
     # Draw the bounding box in an image summary.
     image_with_box = tf.image.draw_bounding_boxes(tf.expand_dims(image, 0),
                                                   bbox_for_draw)
     tf.summary.image('images_with_box', image_with_box)
 
     # Employ the bounding box to distort the image.
     distorted_image = tf.slice(image, begin, size)
 
توجه داشته باشید که اگر هیچ اطلاعات جعبه مرزی در دسترس نباشد، تنظیم «use_image_if_no_bounding_boxes = true» فرض را بر این می‌گذارد که یک کادر محدود ضمنی وجود دارد که کل تصویر را پوشش می‌دهد. اگر «use_image_if_no_bounding_boxes» نادرست باشد و هیچ کادر محدودکننده‌ای ارائه نشده باشد، خطایی ایجاد می‌شود.

کلاس های تو در تو

کلاس SampleDistortedBoundingBox.Options ویژگی های اختیاری برای SampleDistortedBoundingBox

ثابت ها

رشته OP_NAME نام این عملیات، همانطور که توسط موتور هسته TensorFlow شناخته می شود

روش های عمومی

SampleDistortedBoundingBox.Options ثابت
areaRange (List<Float> areaRange)
SampleDistortedBoundingBox.Options ثابت
AspectRatioRange (List<Float> AspectRatioRange)
خروجی < TFloat32 >
bboxes ()
3-بعدی با شکل «[1، 1، 4]» که حاوی جعبه مرزی تحریف شده است.
خروجی <T>
شروع ()
1-D، حاوی «[offset_height, offset_width, 0]».
استاتیک <T TNumber > SampleDistortedBoundingBox <T> را گسترش می دهد
ایجاد ( دامنه ، عملوند <T> imageSize، عملوند < TFloat32 > boundingBoxes، عملوند < TFloat32 > minObjectCovered، گزینه‌ها... گزینه‌ها)
روش Factory برای ایجاد کلاسی که یک عملیات SampleDistortedBoundingBox جدید را بسته بندی می کند.
SampleDistortedBoundingBox.Options ثابت
maxAttempts (Long maxAttempts)
SampleDistortedBoundingBox.Options ثابت
دانه (دانه بلند)
SampleDistortedBoundingBox.Options ثابت
دانه 2 (دانه بلند 2)
خروجی <T>
اندازه ()
1-D، حاوی «[ارتفاع_هدف، پهنای_هدف، -1]».
SampleDistortedBoundingBox.Options ثابت
useIfNoBoundingBoxes ImageIfNoBoundingBox (استفاده بولی ImageIfNoBoundingBoxes)

روش های ارثی

ثابت ها

رشته نهایی ثابت عمومی OP_NAME

نام این عملیات، همانطور که توسط موتور هسته TensorFlow شناخته می شود

مقدار ثابت: "SampleDistortedBoundingBoxV2"

روش های عمومی

عمومی ایستا SampleDistortedBoundingBox.Options areaRange (List<Float> areaRange)

پارامترها
محدوده محدوده ناحیه برش خورده تصویر باید دارای کسری از تصویر ارائه شده در این محدوده باشد.

عمومی ایستا SampleDistortedBoundingBox.Options aspectRatioRange (List<Float> aspectRatioRange)

پارامترها
Aspect Ratio Range ناحیه برش خورده تصویر باید دارای نسبت تصویر = عرض / ارتفاع در این محدوده باشد.

خروجی عمومی < TFloat32 > bboxes ()

3-بعدی با شکل «[1، 1، 4]» که حاوی جعبه مرزی تحریف شده است. به عنوان ورودی tf.image.draw_bounding_boxes ارائه دهید.

خروجی عمومی <T> شروع ()

1-D، حاوی «[offset_height, offset_width, 0]». به عنوان ورودی به tf.slice ارائه دهید.

عمومی ایستا SampleDistortedBoundingBox <T> ایجاد ( scope scope، Operand <T> imageSize، Operand < TFloat32 > boundingBoxs، Operand < TFloat32 > minObjectCovered، Options... گزینه ها)

روش Factory برای ایجاد کلاسی که یک عملیات SampleDistortedBoundingBox جدید را بسته بندی می کند.

پارامترها
دامنه محدوده فعلی
اندازه تصویر 1-D، حاوی «[ارتفاع، عرض، کانال‌ها]».
جعبه های مرزی 3-بعدی با شکل «[دسته، N، 4]» که N کادر محدود مرتبط با تصویر را توصیف می‌کند.
minObject Covered ناحیه برش خورده تصویر باید حداقل شامل این کسری از هر جعبه محدود ارائه شده باشد. مقدار این پارامتر باید غیر منفی باشد. در مورد 0، ناحیه برش داده شده نیازی به همپوشانی با هیچ یک از جعبه های محدود کننده ارائه شده ندارد.
گزینه ها مقادیر ویژگی های اختیاری را حمل می کند
برمی گرداند
  • یک نمونه جدید از SampleDistortedBoundingBox

عمومی ثابت SampleDistortedBoundingBox.Options maxAttempts (Long maxAttempts)

پارامترها
حداکثر تلاش تعداد تلاش برای ایجاد یک ناحیه برش خورده از تصویر محدودیت های مشخص شده. پس از شکست «max_ttempts»، کل تصویر را برگردانید.

عمومی ایستا SampleDistortedBoundingBox. Options seed (Long seed)

پارامترها
دانه اگر «seed» یا «seed2» روی غیر صفر تنظیم شده باشد، مولد اعداد تصادفی با «seed» داده شده بذر می شود. در غیر این صورت، توسط یک بذر تصادفی بذر می شود.

عمومی ایستا SampleDistortedBoundingBox.Options seed2 (Long seed2)

پارامترها
دانه 2 دانه دوم برای جلوگیری از برخورد دانه.

اندازه خروجی عمومی <T> ()

1-D، حاوی «[ارتفاع_هدف، پهنای_هدف، -1]». به عنوان ورودی به tf.slice ارائه دهید.

عمومی ایستا SampleDistortedBoundingBox.Options useImageIfNoBoundingBoxs (استفاده بولی ImageIfNoBoundingBox)

پارامترها
از جعبه های ImageIfNoBounding استفاده کنید در صورت عدم ارائه جعبه محدود کننده، رفتار را کنترل می کند. اگر درست است، یک جعبه مرزی ضمنی را فرض کنید که کل ورودی را پوشش می دهد. اگر نادرست است، یک خطا را مطرح کنید.