یک جعبه مرزی منفرد با تحریف تصادفی برای یک تصویر ایجاد کنید.
حاشیهنویسیهای جعبه مرزی اغلب علاوه بر برچسبهای حقیقت پایه در وظایف تشخیص تصویر یا محلیسازی شی ارائه میشوند. یک تکنیک رایج برای آموزش چنین سیستمی تحریف تصادفی یک تصویر در حالی که محتوای آن حفظ می شود، یعنی افزایش داده ها است. این 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)
کلاس های تو در تو
کلاس | 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> را گسترش می دهد | |
SampleDistortedBoundingBox.Options ثابت | maxAttempts (Long maxAttempts) |
SampleDistortedBoundingBox.Options ثابت | دانه (دانه بلند) |
SampleDistortedBoundingBox.Options ثابت | دانه 2 (دانه بلند 2) |
خروجی <T> | اندازه () 1-D، حاوی «[ارتفاع_هدف، پهنای_هدف، -1]». |
SampleDistortedBoundingBox.Options ثابت | useIfNoBoundingBoxes ImageIfNoBoundingBox (استفاده بولی ImageIfNoBoundingBoxes) |
روش های ارثی
ثابت ها
رشته نهایی ثابت عمومی OP_NAME
نام این عملیات، همانطور که توسط موتور هسته TensorFlow شناخته می شود
روش های عمومی
عمومی ایستا 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 استفاده کنید | در صورت عدم ارائه جعبه محدود کننده، رفتار را کنترل می کند. اگر درست است، یک جعبه مرزی ضمنی را فرض کنید که کل ورودی را پوشش می دهد. اگر نادرست است، یک خطا را مطرح کنید. |
---|