Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
dev:desktop_ext:image_pixel_objects [2021/04/26 11:40]
paulien [Reference Files]
dev:desktop_ext:image_pixel_objects [2021/04/26 11:58]
paulien removed
Line 1: Line 1:
-====== Image Annotation to Object ======+====== Image Annotations to Objects ======
  
-This page describes how to use the extension "Image Annotation to Object"\\+This page describes how to use the extension "Image Annotations to Objects"\\
  
-{{orbit_desktop:how_to_find.png?25&nolink  |}} [[dev:desktop:workspace:main_toolbar|Main Toolbar]] > Extensions > Image Annotation to Object+{{orbit_desktop:how_to_find.png?25&nolink  |}} [[dev:desktop:workspace:main_toolbar|Main Toolbar]] > Extensions > Image Annotations to Objects
  
-The "Image Annotation to Object" extension makes it possible to convert image annotations defined with pixel coordinates or pixel bounds into 3D coordinates or 3D boxes using the pointcloud resource.\\+The "Image Annotations to Objects" extension makes it possible to convert image annotations defined with pixel coordinates or pixel bounds into 3D coordinates or 3D boxes using the pointcloud resource.\\
  
  
Line 13: Line 13:
  
 The image_pixel.ini file describes the tags in the annotation file used for the conversion.  The image_pixel.ini file describes the tags in the annotation file used for the conversion. 
-Every annotation can have a tag to overlay on the opened image.+Every annotation (and optionally the tag) can be overlayed on the opened image.
  
  
Line 39: Line 39:
 There is one csv or xml file in the original or processed folder that is linked to an image via equal filenames.  There is one csv or xml file in the original or processed folder that is linked to an image via equal filenames. 
  
-Example of structure of csv+Example of csv file.
  
 <code> <code>
Line 46: Line 46:
 </code> </code>
  
-The image_pixel.ini file describes the xml tags to be used for conversion+Example of xml file. 
 + 
 +<code> 
 +<?xml version="1.0" ?> 
 +<annotation> 
 + <folder></folder> 
 + <filename>DSC02490.JPG</filename> 
 + <object> 
 + <tags>corrosion,structural_steel,light</tags> 
 + <comment></comment> 
 + <bound> 
 + <xmin>1541</xmin> 
 + <xmax>2008</xmax> 
 + <ymin>4257</ymin> 
 + <ymax>4555</ymax> 
 + </bound> 
 + </object> 
 +</annotation> 
 + 
 + 
 +</code> 
 + 
 +Example of the image_pixel.ini file to describe the xml tags.
          
 <code> <code>
Line 59: Line 81:
 Tags=tags Tags=tags
 Attribute0=folder Attribute0=folder
-Attribute1=component+Attribute1=comment
 ...     ...    
 </code> </code>
Line 65: Line 87:
 ==== One file for all images ==== ==== One file for all images ====
  
-There is one csv or xml file to be selected in which all annotation are described.+There is one csv or xml file to be selected in which all annotations are described. The same structure as for one file for one image can be used
  
 ===== Target ===== ===== Target =====
Line 71: Line 93:
 After selecting the target file location and CRS, choose to create 3D point objects or boxes.  After selecting the target file location and CRS, choose to create 3D point objects or boxes. 
  
-The result is an ovf with the +===== Algorithms =====
  
-The pixels_not_converted.txt contains the list of objects that couldn't be converted+For every situation, slices are created along the vector line between the camera position and the pixel point
  
 +==== 3D Coordinates from Pixel Coordinates ====
  
 +Within a radius around the vector, points are detected and clustered to create the 3D coordinate. 
  
 +==== 3D Coordinates fom Pixel Bounds ====
  
 +Within the pixel coordinate bounds around the vector, voxels are created and clustered to create the 3D coordinate. 
  
-===== Advanced Parameters =====+==== 3D Boxes from Pixel Coordinates ====
  
-Depending on the chosen source and target options, the used parameters will be enabled.+With a radius around the vectorpoints are detected and clustered to create the 3D box
  
-==== 3D Coordinates from Pixel Coordinates ====+If objects on ground, use ground margin.
  
-Slices are created along the vector line between the camera position and the pixel point. Within a radius around the vector, points are detected and clustered to create the 3D coordinate. +==== 3D Boxes from Pixel Bounds ====
  
-==== 3D Coordinates fom Pixel Bounds ====+Withing the pixel coordinate bounds around the vector, voxels are created and clustered to create the 3D box.
  
-Slices are created along the vector line between the camera position and the pixel point. Within the pixel coordinate bounds around the vectorvoxels are created and clustered to create the 3D coordinate+If objects on grounduse ground margin
  
-==== 3D Boxes from Pixel Coordinates ==== 
  
  
  
-If objects on ground, use ground margin. 
  
-==== 3D Boxes from Pixel Bounds ==== 
  
 +===== Advanced Parameters =====
  
- +Depending on the chosen source and target optionsthe used parameters will be enabled.
-If objects on grounduse ground margin+
  
 ==== Search Slice Thickness ==== ==== Search Slice Thickness ====
  
 The thickness of the slices created from camera position to pixel point to search for points.  \\ The thickness of the slices created from camera position to pixel point to search for points.  \\
-  *For creating 3D Coordinates: If a slice has an object, don't search in the following slices.\\ +  *For creating 3D Coordinates: If an object is detected in a slice, don't search in the following slices.\\ 
-  *For creating 3D Boxes: Do search in the following slices up until the Search Dist Max is reached.+  *For creating 3D Boxes: If an object is detected in a slice, do search in the following slices up until the Search Dist Max is reached.
  
 ==== Search Dist Max ==== ==== Search Dist Max ====
Line 116: Line 139:
  
 The radius around the vector between the camera position and pixel point to search for cluster points within a slice.  The radius around the vector between the camera position and pixel point to search for cluster points within a slice. 
-Minimum cluster gap size. 
- 
 This value counts also as the cluster distance which is the minimum cluster gap size.  This value counts also as the cluster distance which is the minimum cluster gap size. 
- 
- 
  
 ==== Cluster Pts Min ==== ==== Cluster Pts Min ====
Line 134: Line 153:
 The ground margin used to identify a 3D box reached the ground to be able to end the clustering.  The ground margin used to identify a 3D box reached the ground to be able to end the clustering. 
 To be used if the object to identify is located on the ground. If you don't remove the ground, the object will become bigger.  To be used if the object to identify is located on the ground. If you don't remove the ground, the object will become bigger. 
-For bins, hyrdants 
  
-Use to create boxes for objects on the ground.  
  
 ==== Voxel Size ==== ==== Voxel Size ====
  
-The box is divided into voxels of this size. +The box in the slice is divided into voxels of this size. 
  
 ==== Voxel Pts Min ==== ==== Voxel Pts Min ====
Line 148: Line 165:
 ===== Results ===== ===== Results =====
  
-The result is an ovf with the attributes from the image_pixel.ini file. The following attributes are extra: +The result is an ovf where every object corresponds to one annotation, having the attributes from the image_pixel.ini file or csv file. The following attributes are extra: 
-  * FD_ImageAnnotationSequence: Is to indicate the sequence of annotation on the same image. +  * FD_ImageAnnotationSequence: Used to indicate the sequence of annotation on the same image. 
   * FD_PixelDistanceFromAnnotation: The distance to the pixel coordinate or the center of the pixel bounds, expressed in pixels.    * FD_PixelDistanceFromAnnotation: The distance to the pixel coordinate or the center of the pixel bounds, expressed in pixels. 
   * FD_InsideAnnotationBounds: The value can be zero/false or one/true. True means that the display of the created object is still within the bounds of the original annotation. False means that the display of the created object is outside the bounds of the original annotation. For pixel coordinate definition always false/zero.    * FD_InsideAnnotationBounds: The value can be zero/false or one/true. True means that the display of the created object is still within the bounds of the original annotation. False means that the display of the created object is outside the bounds of the original annotation. For pixel coordinate definition always false/zero.