Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
tensoreflusso:: ops:: Ritaglia e ridimensiona
#include <image_ops.h>
Estrae i ritagli dal tensore dell'immagine di input e li ridimensiona.
Riepilogo
Estrae i ritagli dal tensore dell'immagine di input e li ridimensiona utilizzando il campionamento bilineare o il campionamento del vicino più vicino (possibilmente con modifica delle proporzioni) in una dimensione di output comune specificata da crop_size
. Questo è più generale dell'operazione crop_to_bounding_box
che estrae una sezione di dimensione fissa dall'immagine di input e non consente il ridimensionamento o la modifica delle proporzioni.
Restituisce un tensore con crops
image
di input nelle posizioni definite nelle posizioni del riquadro di delimitazione in boxes
. I riquadri ritagliati vengono tutti ridimensionati (con interpolazione bilineare o del vicino più vicino) a una size = [crop_height, crop_width]
. Il risultato è un tensore 4-D [num_boxes, crop_height, crop_width, depth]
. Il ridimensionamento è allineato agli angoli. In particolare, se boxes = [[0, 0, 1, 1]]
, il metodo fornirà risultati identici all'utilizzo di tf.image.resize_bilinear()
o tf.image.resize_nearest_neighbor()
(dipende dall'argomento del method
) con align_corners=True
.
Argomenti:
- scope: un oggetto Scope
- image: un tensore di forma 4-D
[batch, image_height, image_width, depth]
. Sia image_height
che image_width
devono essere positivi. - boxs: un tensore 2-D di forma
[num_boxes, 4]
. L' i
-esima riga del tensore specifica le coordinate di un riquadro nell'immagine box_ind[i]
ed è specificata in coordinate normalizzate [y1, x1, y2, x2]
. Un valore di coordinata normalizzato di y
viene mappato alla coordinata dell'immagine in y * (image_height - 1)
, in modo che l'intervallo [0, 1]
dell'altezza dell'immagine normalizzata sia mappato su [0, image_height - 1]
nelle coordinate di altezza dell'immagine. Consentiamo y1
> y2
, nel qual caso il ritaglio campionato è una versione capovolta verso l'alto dell'immagine originale. La dimensione della larghezza viene trattata in modo simile. Sono consentite coordinate normalizzate esterne all'intervallo [0, 1]
, nel qual caso utilizziamo extrapolation_value
per estrapolare i valori dell'immagine di input. - box_ind: un tensore 1-D di forma
[num_boxes]
con valori int32 in [0, batch)
. Il valore di box_ind[i]
specifica l'immagine a cui si riferisce l' i
-esimo box. - crop_size: un tensore 1-D di 2 elementi,
size = [crop_height, crop_width]
. Tutte le porzioni di immagine ritagliate vengono ridimensionate a queste dimensioni. Le proporzioni del contenuto dell'immagine non vengono preservate. Sia crop_height
che crop_width
devono essere positivi.
Attributi facoltativi (vedi Attrs
):
- metodo: una stringa che specifica il metodo di campionamento per il ridimensionamento. Può essere
"bilinear"
o "nearest"
e il valore predefinito è "bilinear"
. Attualmente sono supportati due metodi di campionamento: bilineare e vicino più vicino. - extrapolation_value: valore utilizzato per l'estrapolazione, quando applicabile.
Resi:
-
Output
: un tensore 4-D di forma [num_boxes, crop_height, crop_width, depth]
.
Attributi pubblici
Funzioni pubbliche
nodo
::tensorflow::Node * node() const
operator::tensorflow::Input() const
operatore::tensorflow::Output
operator::tensorflow::Output() const
Funzioni pubbliche statiche
Attrs ExtrapolationValue(
float x
)
Metodo
Attrs Method(
StringPiece x
)
Salvo quando diversamente specificato, i contenuti di questa pagina sono concessi in base alla licenza Creative Commons Attribution 4.0, mentre gli esempi di codice sono concessi in base alla licenza Apache 2.0. Per ulteriori dettagli, consulta le norme del sito di Google Developers. Java è un marchio registrato di Oracle e/o delle sue consociate.
Ultimo aggiornamento 2025-07-26 UTC.
[null,null,["Ultimo aggiornamento 2025-07-26 UTC."],[],[],null,["# tensorflow::ops::CropAndResize Class Reference\n\ntensorflow::ops::CropAndResize\n==============================\n\n`#include \u003cimage_ops.h\u003e`\n\nExtracts crops from the input image tensor and resizes them.\n\nSummary\n-------\n\nExtracts crops from the input image tensor and resizes them using bilinear sampling or nearest neighbor sampling (possibly with aspect ratio change) to a common output size specified by `crop_size`. This is more general than the `crop_to_bounding_box` op which extracts a fixed size slice from the input image and does not allow resizing or aspect ratio change.\n\nReturns a tensor with `crops` from the input `image` at positions defined at the bounding box locations in `boxes`. The cropped boxes are all resized (with bilinear or nearest neighbor interpolation) to a fixed `size = [crop_height, crop_width]`. The result is a 4-D tensor `[num_boxes, crop_height, crop_width, depth]`. The resizing is corner aligned. In particular, if `boxes = [[0, 0, 1, 1]]`, the method will give identical results to using `tf.image.resize_bilinear()` or `tf.image.resize_nearest_neighbor()`(depends on the `method` argument) with `align_corners=True`.\n\nArguments:\n\n- scope: A [Scope](/versions/r2.3/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope) object\n- image: A 4-D tensor of shape `[batch, image_height, image_width, depth]`. Both `image_height` and `image_width` need to be positive.\n- boxes: A 2-D tensor of shape `[num_boxes, 4]`. The `i`-th row of the tensor specifies the coordinates of a box in the `box_ind[i]` image and is specified in normalized coordinates `[y1, x1, y2, x2]`. A normalized coordinate value of `y` is mapped to the image coordinate at `y * (image_height - 1)`, so as the `[0, 1]` interval of normalized image height is mapped to `[0, image_height - 1]` in image height coordinates. We do allow `y1` \\\u003e `y2`, in which case the sampled crop is an up-down flipped version of the original image. The width dimension is treated similarly. Normalized coordinates outside the `[0, 1]` range are allowed, in which case we use `extrapolation_value` to extrapolate the input image values.\n- box_ind: A 1-D tensor of shape `[num_boxes]` with int32 values in `[0, batch)`. The value of `box_ind[i]` specifies the image that the `i`-th box refers to.\n- crop_size: A 1-D tensor of 2 elements, `size = [crop_height, crop_width]`. [All](/versions/r2.3/api_docs/cc/class/tensorflow/ops/all#classtensorflow_1_1ops_1_1_all) cropped image patches are resized to this size. The aspect ratio of the image content is not preserved. Both `crop_height` and `crop_width` need to be positive.\n\n\u003cbr /\u003e\n\nOptional attributes (see [Attrs](/versions/r2.3/api_docs/cc/struct/tensorflow/ops/crop-and-resize/attrs#structtensorflow_1_1ops_1_1_crop_and_resize_1_1_attrs)):\n\n- method: A string specifying the sampling method for resizing. It can be either `\"bilinear\"` or `\"nearest\"` and default to `\"bilinear\"`. Currently two sampling methods are supported: Bilinear and Nearest Neighbor.\n- extrapolation_value: Value used for extrapolation, when applicable.\n\n\u003cbr /\u003e\n\nReturns:\n\n- [Output](/versions/r2.3/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output): A 4-D tensor of shape `[num_boxes, crop_height, crop_width, depth]`.\n\n\u003cbr /\u003e\n\n| ### Constructors and Destructors ||\n|---|---|\n| [CropAndResize](#classtensorflow_1_1ops_1_1_crop_and_resize_1ab17f07d2b9db2923f4f16cc6ddd10c9d)`(const ::`[tensorflow::Scope](/versions/r2.3/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope)` & scope, ::`[tensorflow::Input](/versions/r2.3/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` image, ::`[tensorflow::Input](/versions/r2.3/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` boxes, ::`[tensorflow::Input](/versions/r2.3/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` box_ind, ::`[tensorflow::Input](/versions/r2.3/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` crop_size)` ||\n| [CropAndResize](#classtensorflow_1_1ops_1_1_crop_and_resize_1adb1d93c1c956c1d654b701bc078ab6ae)`(const ::`[tensorflow::Scope](/versions/r2.3/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope)` & scope, ::`[tensorflow::Input](/versions/r2.3/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` image, ::`[tensorflow::Input](/versions/r2.3/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` boxes, ::`[tensorflow::Input](/versions/r2.3/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` box_ind, ::`[tensorflow::Input](/versions/r2.3/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` crop_size, const `[CropAndResize::Attrs](/versions/r2.3/api_docs/cc/struct/tensorflow/ops/crop-and-resize/attrs#structtensorflow_1_1ops_1_1_crop_and_resize_1_1_attrs)` & attrs)` ||\n\n| ### Public attributes ||\n|---------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------|\n| [crops](#classtensorflow_1_1ops_1_1_crop_and_resize_1a3d1569c38bfdd7881539d76880193614) | `::`[tensorflow::Output](/versions/r2.3/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output) |\n| [operation](#classtensorflow_1_1ops_1_1_crop_and_resize_1ade78876fbd90696b4364af105b775c29) | [Operation](/versions/r2.3/api_docs/cc/class/tensorflow/operation#classtensorflow_1_1_operation) |\n\n| ### Public functions ||\n|---------------------------------------------------------------------------------------------------------------------------|------------------------|\n| [node](#classtensorflow_1_1ops_1_1_crop_and_resize_1a44e6253b604ef5a11098dd6b01034a73)`() const ` | `::tensorflow::Node *` |\n| [operator::tensorflow::Input](#classtensorflow_1_1ops_1_1_crop_and_resize_1a009f32b1c13c815bcb4f1e20bbb506d9)`() const ` | ` ` ` ` |\n| [operator::tensorflow::Output](#classtensorflow_1_1ops_1_1_crop_and_resize_1a27ee3121d018ca29ecc4d112bfe6dbf7)`() const ` | ` ` ` ` |\n\n| ### Public static functions ||\n|-----------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------|\n| [ExtrapolationValue](#classtensorflow_1_1ops_1_1_crop_and_resize_1a24585f2ae8f486ed7cf26b7636398bbb)`(float x)` | [Attrs](/versions/r2.3/api_docs/cc/struct/tensorflow/ops/crop-and-resize/attrs#structtensorflow_1_1ops_1_1_crop_and_resize_1_1_attrs) |\n| [Method](#classtensorflow_1_1ops_1_1_crop_and_resize_1a430830e07a336ae16aa3093ed0480d8d)`(StringPiece x)` | [Attrs](/versions/r2.3/api_docs/cc/struct/tensorflow/ops/crop-and-resize/attrs#structtensorflow_1_1ops_1_1_crop_and_resize_1_1_attrs) |\n\n| ### Structs ||\n|-----------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [tensorflow::ops::CropAndResize::Attrs](/versions/r2.3/api_docs/cc/struct/tensorflow/ops/crop-and-resize/attrs) | Optional attribute setters for [CropAndResize](/versions/r2.3/api_docs/cc/class/tensorflow/ops/crop-and-resize#classtensorflow_1_1ops_1_1_crop_and_resize). |\n\nPublic attributes\n-----------------\n\n### crops\n\n```text\n::tensorflow::Output crops\n``` \n\n### operation\n\n```text\nOperation operation\n``` \n\nPublic functions\n----------------\n\n### CropAndResize\n\n```gdscript\n CropAndResize(\n const ::tensorflow::Scope & scope,\n ::tensorflow::Input image,\n ::tensorflow::Input boxes,\n ::tensorflow::Input box_ind,\n ::tensorflow::Input crop_size\n)\n``` \n\n### CropAndResize\n\n```gdscript\n CropAndResize(\n const ::tensorflow::Scope & scope,\n ::tensorflow::Input image,\n ::tensorflow::Input boxes,\n ::tensorflow::Input box_ind,\n ::tensorflow::Input crop_size,\n const CropAndResize::Attrs & attrs\n)\n``` \n\n### node\n\n```gdscript\n::tensorflow::Node * node() const \n``` \n\n### operator::tensorflow::Input\n\n```gdscript\n operator::tensorflow::Input() const \n``` \n\n### operator::tensorflow::Output\n\n```gdscript\n operator::tensorflow::Output() const \n``` \n\nPublic static functions\n-----------------------\n\n### ExtrapolationValue\n\n```text\nAttrs ExtrapolationValue(\n float x\n)\n``` \n\n### Method\n\n```text\nAttrs Method(\n StringPiece x\n)\n```"]]