tensorflow :: ops :: جعبه SampleDistortedBoundingBox
#include <image_ops.h>
برای تصویر یک جعبه محدود منحصر به فرد تحریف شده ایجاد کنید.
خلاصه
حاشیه نویسی های جعبه محدود اغلب در کارهای تشخیص تصویر یا محلی سازی اشیا image علاوه بر برچسب های حقیقت زمین ارائه می شوند. یک روش معمول برای آموزش چنین سیستمی تحریف تصادفی تصویری است ضمن حفظ محتوای آن ، یعنی افزایش داده ها . این عملیات خروجی محلی سازی به طور تصادفی تحریف شده از یک شی، یعنی محدوده کادر، با توجه به image_size
، bounding_boxes
و یک سری از محدودیت.
خروجی این Op یک جعبه محدود است که ممکن است برای برش تصویر اصلی استفاده شود. خروجی به عنوان 3 bboxes
begin
: begin
، size
و bboxes
. 2 tf.slice
اول را می توان مستقیماً به tf.slice
برش داد تا تصویر را برش دهد. مورد دوم ممکن است به tf.image.draw_bounding_boxes
ارائه شود تا جعبه محدود به نظر برسد.
جعبه های [y_min, x_min, y_max, x_max]
به صورت [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
نادرست باشد و هیچ جعبه محدود کننده ای ارائه نشود ، خطایی ایجاد می شود.
استدلال ها:
- دامنه: یک شی Sc Scope
- اندازه_ تصویر: 1-D ، حاوی
[height, width, channels]
. - binding_boxes: 3-D با شکل
[batch, N, 4]
توصیف جعبه های محدود کننده N مرتبط با تصویر.
ویژگی های اختیاری (به Attrs
مراجعه کنید):
- seed: اگر
seed
یاseed2
روی صفر تنظیم شود ، مولد اعداد تصادفی توسطseed
داده شدهseed
. در غیر این صورت ، توسط یک بذر تصادفی بذر می شود. - seed2: دانه دوم برای جلوگیری از برخورد دانه ها.
- min_object_closed: قسمت برش خورده تصویر باید حداقل شامل این کسری از جعبه محدود ارائه شده باشد. مقدار این پارامتر باید منفی نباشد. در مورد 0 ، منطقه برش خورده نیازی به همپوشانی هیچ یک از جعبه های مرزی ارائه نشده ندارد.
- aspect_ratio_range: ناحیه بریده شده تصویر باید دارای نسبت ابعاد = عرض / ارتفاع در این محدوده باشد.
- area_range: ناحیه برش خورده تصویر باید شامل کسری از تصویر ارائه شده در این محدوده باشد.
- max_attempts: تعداد تلاشها برای ایجاد یک منطقه بریده شده از تصویر محدودیتهای مشخص شده. پس از شکست
max_attempts
، کل تصویر را برگردانید. - use_image_if_no_bounding_boxes: در صورت عدم ارائه جعبه محدود کننده ، رفتار را کنترل می کند. اگر درست است ، یک جعبه محدود ضمنی را در نظر بگیرید که کل ورودی را پوشانده باشد. در صورت نادرست بودن ، خطایی را مطرح کنید.
بازده:
- شروع
Output
: 1-D ، حاوی[offset_height, offset_width, 0]
. به عنوان ورودیtf.slice
. - اندازه
Output
: 1-D ، حاوی[target_height, target_width, -1]
. به عنوان ورودیtf.slice
. - جعبه های
Output
: 3-D با شکل[1, 1, 4]
حاوی جعبه محدود تحریف شده. به عنوان ورودیtf.image.draw_bounding_boxes
.
سازندگان و ویرانگران | |
---|---|
SampleDistortedBoundingBox (const :: tensorflow::Scope & scope, :: tensorflow::Input image_size, :: tensorflow::Input bounding_boxes) | |
SampleDistortedBoundingBox (const :: tensorflow::Scope & scope, :: tensorflow::Input image_size, :: tensorflow::Input bounding_boxes, const SampleDistortedBoundingBox::Attrs & attrs) |
صفات عمومی | |
---|---|
bboxes | |
begin | |
operation | |
size |
توابع استاتیک عمومی | |
---|---|
AreaRange (const gtl::ArraySlice< float > & x) | |
AspectRatioRange (const gtl::ArraySlice< float > & x) | |
MaxAttempts (int64 x) | |
MinObjectCovered (float x) | |
Seed (int64 x) | |
Seed2 (int64 x) | |
UseImageIfNoBoundingBoxes (bool x) |
سازه ها | |
---|---|
tensorflow :: ops :: SampleDistortedBoundingBox :: Attrs | تنظیم کننده های ویژگی اختیاری برای SampleDistortedBoundingBox . |
صفات عمومی
جعبه
::tensorflow::Output bboxes
شروع
::tensorflow::Output begin
عمل
Operation operation
اندازه
::tensorflow::Output size
کارکردهای عمومی
جعبه SampleDistortedBoundingBox
SampleDistortedBoundingBox( const ::tensorflow::Scope & scope, ::tensorflow::Input image_size, ::tensorflow::Input bounding_boxes )
جعبه SampleDistortedBoundingBox
SampleDistortedBoundingBox( const ::tensorflow::Scope & scope, ::tensorflow::Input image_size, ::tensorflow::Input bounding_boxes, const SampleDistortedBoundingBox::Attrs & attrs )
توابع استاتیک عمومی
محدوده منطقه
Attrs AreaRange( const gtl::ArraySlice< float > & x )
AspectRatioRange
Attrs AspectRatioRange( const gtl::ArraySlice< float > & x )
حداکثر تلاش
Attrs MaxAttempts( int64 x )
MinObjectClosed
Attrs MinObjectCovered( float x )
بذر
Attrs Seed( int64 x )
دانه 2
Attrs Seed2( int64 x )
از جعبه های UseImageIfNoBoundingBox استفاده کنید
Attrs UseImageIfNoBoundingBoxes( bool x )
جز در مواردی که غیر از این ذکر شده باشد،محتوای این صفحه تحت مجوز Creative Commons Attribution 4.0 License است. نمونه کدها نیز دارای مجوز Apache 2.0 License است. برای اطلاع از جزئیات، به خطمشیهای سایت Google Developers مراجعه کنید. جاوا علامت تجاری ثبتشده Oracle و/یا شرکتهای وابسته به آن است.
تاریخ آخرین بهروزرسانی 2020-04-20 بهوقت ساعت هماهنگ جهانی.