> For the complete documentation index, see [llms.txt](https://docs.mindee.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.mindee.com/v2/fr/modeles-crop/sdk-integration/crop-result.md).

# Résultat Crop

Documentation de référence sur le traitement d’un résultat Crop à l’aide des SDK Mindee.

Vous devrez disposer d'un objet de réponse comme décrit dans la [Traitement des réponses](/v2/fr/integrations/client-libraries-sdk/process-the-response.md) section.

## Accéder aux éléments CropItem

Un `CropItem` décrit l'emplacement d'un seul objet détecté.

Dans ce contexte, un *objet* peut être n'importe quel élément à trouver sur une page.

La plupart des utilisateurs rechercheront un type de document (comme un reçu ou une pièce d'identité), mais cela peut réellement être n'importe quoi (une photo, un logo, etc.).&#x20;

## `CropItem` Attributs

### Type d'objet

La catégorie attribuée à l'objet. Elle est toujours renseignée.

Il est renvoyé sous forme de chaîne et est identique à la valeur saisie sur la plateforme Mindee — casse, espaces et ponctuation compris.

Pourquoi « Type d'objet » plutôt que « Type de document », comme pour Split et Classification ? Parce que la technologie de base est différente : Crop utilise des algorithmes de détection d'objets, tandis que Split et Classification utilisent des variantes de la technologie de classification.

### Emplacement

L'emplacement de l'objet dans le document. Il contient les propriétés suivantes :

* Polygone : coordonnées de l'objet.
* Page : index, basé sur 0, de la page sur laquelle les coordonnées ont été trouvées.

### Parcourir les CropItem

Vous voudrez généralement parcourir tous les CropItem, car le nombre d'éléments dépend du document. N'oubliez pas qu'un document peut avoir plusieurs pages, et que chacune de ses pages peut comporter plusieurs CropItem.

### Résultats de l'Extraction

Réponse d'extraction facultative associée à la `CropItem`. Elle n'est renseignée que si le chaînage d'extraction est activé pour le modèle.

Les résultats de l’extraction en chaîne seront dans un `ExtractionResponse` objet. Cet objet est identique à la réponse d’un modèle Extraction.

Reportez-vous à la [Résultat de l’extraction](/v2/fr/modeles-extraction/sdk-integration/extraction-result.md) section pour plus de détails sur le traitement de l’extraction.

## Exemple de code

{% tabs %}
{% tab title="Python" %}

```python
from mindee import CropResponse

def handle_response(response: CropResponse) -> None:
    crops = response.inference.result.crops

    for crop in crops:
        # Type d'objet identifié pour ce Crop
        object_type = crop.object_type
        print(f"Type détecté : {object_type}")

        # Emplacement du Crop
        location = crop.location

        # Index de page, basé sur 0
        page = location.page

        # Objet polygone, qui inclut quelques méthodes utiles
        polygon = location.polygon
        center = polygon.centroid

        print(f"Sur la page {page}, avec le centre en {center}")

        # Réponse d'extraction facultative, présente si le chaînage d'extraction a été demandé
        extraction_response = crop.extraction_response

        if extraction_response is not None:
            # Accédez aux champs extraits du résultat d'inférence du Crop
            fields = extraction_response.inference.result.fields
            print(f"Champs d'extraction : {fields}")
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
function handleResponse(response): void {
  const crops = response.inference.result.crops;

  for (const crop of crops) {
    // Type d'objet identifié pour ce Crop
    const objectType = crop.objectType;
    console.log(`Detected type: ${objectType}`);

    // Emplacement du Crop
    const location = crop.location;

    // Index de page, basé sur 0
    const page = location.page;

    // Objet polygone, qui inclut quelques méthodes utiles
    const polygon = location.polygon;
    const center = polygon.getCentroid();

    console.log(`On page ${page}, with center at ${center}`);

    // Réponse d'extraction facultative, présente si le chaînage d'extraction a été demandé
    const extractionResponse = crop.extractionResponse;

    if (extractionResponse !== undefined) {
      // Accédez aux champs extraits du résultat d'inférence du Crop
      const fields = extractionResponse.inference.result.fields;
      console.log(`Extraction fields: ${fields}`);
    }
  }
}
```

{% endtab %}

{% tab title="PHP" %}

```php
use Mindee\V2\Product\Split\CropResponse;

public function handleResponse(CropResponse $response)
{
    $crops = $response->inference->result->crops;
}
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
def handle_response(response)
  crops = response.inference.result.crops

  crops.each do |crop|
    # Type d'objet identifié pour ce Crop
    object_type = crop.object_type
    puts "Type détecté : #{object_type}"

    # Emplacement du Crop
    location = crop.location

    # Index de page, basé sur 0
    page = location.page

    # Objet polygone, qui inclut quelques méthodes utiles
    polygon = location.polygon
    center = polygon.centroid

    puts "Sur la page #{page}, avec le centre en #{center}"

    # Réponse d'extraction facultative, présente si le chaînage d'extraction a été demandé
    extraction_response = crop.extraction_response

    unless extraction_response.nil?
      # Accédez aux champs extraits du résultat d'inférence du Split
      fields = extraction_response.inference.result.fields
      puts "Champs d'extraction : #{fields}"
    end
  end
end
```

{% endtab %}

{% tab title="Java" %}

```java
import com.mindee.v2.product.crop.CropResponse;

public void handleResponse(CropResponse response) {
  var crops = response.getInference().getResult().getCrops();
  
  for (var crop : crops) {
    // Type d'objet identifié pour ce Crop
    String objectType = crop.getObjectType();
    System.out.println("Type détecté : " + objectType);

    // emplacement du Crop
    var location = crop.getLocation();

    // Index de page, basé sur 0
    var page = location.getPage();

    // objet polygone, qui inclut quelques méthodes utiles
    var polygon = location.getPolygon();
    var center = polygon.getCentroid();

    System.out.println("Sur la page " + page + ", avec le centre en " + center);

    // Réponse d'extraction facultative, présente si le chaînage d'extraction a été demandé
    var extractionResponse = crop.getExtractionResponse();

    if (extractionResponse != null) {
      // Accédez aux champs extraits du résultat d'inférence du Split
      var fields = extractionResponse.getInference().getResult().getFields();
      System.out.println("Champs d'extraction : " + fields.toString());
    }
  }
}
```

{% endtab %}

{% tab title=".NET" %}

```csharp
using Mindee.V2.Product.Crop;

public void HandleResponse(CropResponse response)
{
    var crops = response.Inference.Result.Crops;

    foreach (var crop in crops)
    {
        // Type d'objet identifié pour ce Crop
        string objectType = crop.ObjectType;
        Console.WriteLine($"Type détecté : {objectType}");

        // Emplacement du Crop
        var location = crop.Location;

        // Index de page, basé sur 0
        var page = location.Page;

        // Objet polygone, qui inclut quelques méthodes utiles
        var polygon = location.Polygon;
        var center = polygon.GetCentroid();

        Console.WriteLine($"Sur la page {page}, avec le centre en {center}");

        // Réponse d'extraction facultative, présente si le chaînage d'extraction a été demandé
        var extractionResponse = crop.ExtractionResponse;

        if (extractionResponse != null)
        {
            // Accédez aux champs extraits du résultat d'inférence du Crop
            var fields = extractionResponse.Inference.Result.Fields;
            Console.WriteLine($"Champs d'extraction : {fields}");
        }
    }
}
```

{% endtab %}
{% endtabs %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.mindee.com/v2/fr/modeles-crop/sdk-integration/crop-result.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
