Skip to content

TorchYOLOv7Attribute

Moscowsky Anton edited this page Mar 10, 2023 · 7 revisions

Torch YOLOv7 Attribute

This attributes uses YOLOv7 models for object detection. Libtorch is used for detecting and have to be installed.

Modes Accuracy assessment 3D-translation 3D-rotation Contour extraction Additional info
D D Optional <Attribute_name>:class_id

1. Modes

1.1. Detect

Returns areas with objects recognized by YOLOv7 and having a probability not lower than Probability.

1.2. Check

Not implemented

1.3. Extract

Not implemented

2. XML-description

2.1. Common parameters

  • Name (string, must be set) attribute unique name
  • Type (string, must be "TorchYOLOv7") attribute type
  • Weight (double, default: 1) attribute weight
  • Probability (double, default: 0.75) acceptable detection accuracy, used in Detect mode.
  • Contour (bool, default: true) Returns the contour of the attribute if true.

2.2. Special parameters

  • model_path (string, must be set) The path to the weight .pt file, which must be exported from pytorch (see below).
  • input_size (int, default: 640) Width and height for CNN input, for most YOLOv7 models is 640.

2.3. Example

<?xml version="1.0" ?>

<AttributeLib>
    
    
    <Attribute Name="torch" Type="torchyolov7" model_path="/home/anton/Projects/yolov7/yolov7-tiny.torchscript.pt" input_size="640" Probability="0.2">
        <Filter Type="NMS" threshold="0.5"/>
    </Attribute>

</AttributeLib>

<SimpleObjectBase>  
    
     <SimpleObject Name="torch" ID="0"  Probability="0.2">
        <Attribute Type="Detect">torch</Attribute>                            
    </SimpleObject>
    
</SimpleObjectBase>

3. Exporting weight for model

Use export.py script from original repository like:

python export.py --weights yolov7-tiny.pt 

This will create file yolov7-tiny.torchscript.pt that can be used.

Clone this wiki locally