Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents
minLevel1
maxLevel2

BenchBot Operators

Species location map

Why

This important information is used in the pipeline to automatically label detection results and the resulting plant cutouts.

Note

It’s important that species locations stays consistent throughout the growing season.

Who

BenchBot operators on the ground at each location

When

Once when pots are initially placed and anytime afterward if the location of species changes. The location of species (pots) should not change once the season starts, however; if species location changes, the pipeline dev group should be notified.

Pots within individual species groups can, and will likely move from day-to-day operations (see below about avoiding border drift). But species location should not change.

Where

A single map should include all benches/potting areas and should be made for each location.

Ideally, this map should only need to be created once and sent once to the the pipeline dev group.

How

Map

Drawing or use an excel spread sheet that clearly delineates the relative position of species in each potting area.

Avoid drifting species-species borders

Transition areas from one species to another should stay consistent. In another words, an imaginary line separating 2 species potting groups should not move or drift throughout the season from day-to-day operations.

BenchBot operators should place a small gap separating species groups. This gives some leeway for slight drift overtime while insuring species stay separated.

What

Identify

  1. bench number

  2. species name in USDA symbol

  3. pot row number or barcode number

  4. “0,0” origin for each bench

How Bench numbers and pot row numbers (if used) are named should not change for the duration of the season.

Species Maps

Expand
titleMaryland (summer 2022)
Image Removed

...

titleNorth Carolina (summer 2022)

...

Bench #

...

Barcode

...

Y coordinates (cm)

...

X coordinates (cm)

...

Specie

...

1

...

114

...

0

...

0

...

palmer

...

1

...

149

...

70

...

0

...

palmer

...

1

...

127

...

0

...

195

...

palmer

...

1

...

159

...

72.5

...

195

...

palmer

...

1

...

119

...

0

...

514

...

Digitaria

...

1

...

113

...

77

...

514

...

Digitaria

...

1

...

128

...

0

...

751

...

Digitaria

...

1

...

148

...

79

...

751

...

Digitaria

...

1

...

129

...

0

...

979

...

Soybeans

...

1

...

147

...

79

...

979

...

Soybeans

...

1

...

121

...

0

...

1214

...

Soybeans

...

1

...

119

...

72

...

1214

...

Soybeans

...

2

...

156

...

0

...

0

...

cocklebird

...

2

...

110

...

78

...

0

...

cocklebird

...

2

...

140

...

0

...

257

...

cocklebird

...

2

...

139

...

73

...

257

...

cocklebird

...

2

...

145

...

0

...

534

...

urochloa

...

2

...

111

...

73

...

534

...

urochloa

...

2

...

146

...

0

...

784

...

urochloa

...

2

...

155

...

78.5

...

784

...

urochloa

...

2

...

125

...

0

...

1060

...

nutsedge

...

2

...

117

...

72

...

1060

...

nutsedge

...

2

...

115

...

0

...

1311

...

nutsedge

...

2

...

116

...

76

...

1311

...

nutsedge

...

3

...

158

...

0

...

0

...

sicklepod

...

3

...

120

...

82

...

0

...

sicklepod

...

3

...

131

...

0

...

197

...

sicklepod

...

3

...

154

...

78

...

197

...

sicklepod

...

3

...

144

...

0

...

440

...

ambrosia

...

3

...

150

...

75

...

440

...

ambrosia

...

3

...

152

...

0

...

687

...

ambrosia

...

3

...

143

...

79

...

687

...

ambrosia

...

3

...

142

...

0

...

986

...

goosegrass

...

3

...

153

...

82

...

986

...

goosegrass

...

3

...

151

...

0

...

1237

...

goosegrass

...

3

...

135

...

83

...

1237

...

goosegrass

Dev

Species Locations Shapefiles

What: Global potting area locations of each species group in the form of polygons. A single polygon encompasses one species group is marked as such in the shapefile attribute table. Polygons are created by pulling in the orthomosaic generated from AutoSfM. Shapefiles are created manually but only need to be done once.

Where: QGIS or other GIS software

How: Pull in orthomosaic into QGIS or another GIS software. Create a shapefile and draw polygons around each species group. Create attribute “species” and mark each polygon as such. Save shapefile and place under semif-utils.

When: Once per growing season, a single shapefile for each location.

Why: Polygons are used to provide species labels for each bounding box detection result. The object detection model only detects vegetation but we also want species label information. Because local detection results are scaled to a global coordinate reference system via AutoSfM, they can be compared to larger areas throughout the potting area. An orthomosaic, that provides a visual representation to the global CRS, can be used to manually demarcate species potting groups. Detection results that fall within the polygon area are given species labels of respective polygons.

Note

Species group locations in the potting area must remain constant

Batches

Images

Cutouts

...

Various types of data are used and produced during processing. Full resolution images are the main data input and are processed to produce plant segments, or cutouts, various types of masks, and metadata products for both original images and cutouts. This section describes how this is data structured, details its contents, and documents Image and Cutout metadata at length.

Directory Structure

Code Block
languagenone
data
  ├── semifield-developed-images
  │   ├── NC_2022-07-27
  │   │   ├── NC_2022-07-27.json
  │   │   │
  │   │   ├── autosfm
  │   │   │   ├── NC_2022-07-27_preview.png
  │   │   │   ├── detections.csv
  │   │   │   ├── dem
  │   │   │   │   └── dem.tif
  │   │   │   ├── downscaled_photos
  │   │   │   │   ├── NC_1658926241.png
  │   │   │   │   ├── NC_1658926255.png
  │   │   │   │   └── ...
  │   │   │   ├── downscaled_masks
  │   │   │   │   ├── NC_1658926241_mask.png
  │   │   │   │   ├── NC_1658926255_mask.png
  │   │   │   │   └── ...
  │   │   │   ├── ortho
  │   │   │   │   └── orthomosaic.tif
  │   │   │   ├── project
  │   │   │   │   ├── NC_2022-07-27.psx
  │   │   │   │   └── NC_2022-07-27.files
  │   │   │   └── reference
  │   │   │       ├── camera_reference.csv
  │   │   │       ├── error_statistic.csv
  │   │   │       ├── fov.csv
  │   │   │       └──gcp_reference.csv
  │   │   │
  │   │   ├── images
  │   │   │   ├── NC_1658926241.png
  │   │   │   ├── NC_1658926255.png
  │   │   │   └── ...
  │   │   │
  │   │   ├── masks
  │   │   │   ├── NC_1658926241_mask.png
  │   │   │   ├── NC_1658926255_mask.png
  │   │   │   └── ...
  │   │   │
  │   │   ├── plant-detections
  │   │   │   ├── NC_1658926241.csv
  │   │   │   ├── NC_1658926255.csv
  │   │   │   └── ...
  │   │   │
  │   │   ├── metadata
  │   │   │   ├── NC_1658926241.json
  │   │   │   ├── NC_1658926255.json
  │   │   │   └── ...
  │   │   │
  │   │   └── metamasks
  │   │       ├── semantic_masks
  │   │       │   ├── NC_1658926241.png
  │   │       │   ├── NC_1658926255.png
  │   │       │   └── ...
  │   │       └── instance_masks
  │   │           ├── NC_1658926241.png
  │   │           ├── NC_1658926255.png
  │   │           └── ...  
  │   └── ...
  │
  ├── semifield-cutouts
  │   ├── NC_2022-07-27
  │   │   ├── NC_1658926241_0.png
  │   │   ├── NC_1658926241_0.json
  │   │   ├── NC_1658926241_0.jpg
  │   │   ├── NC_1658926241_0_mask.png
  │   │   └── ...
  │   └── ...
  │
  └── semifield-utils
      ├── MD
      │   ├── shapefiles
      │   │   │   ├── MD.shp
      │   │   │   └── ...
      │   │   └── GroundControlPoints.csv 
      ├── NC
      │   ├── shapefiles
      │   │   ├── NC.shp
      │   │   └── ...
      │   └── GroundControlPoints.csv                            
      └── species_info.json