Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Handle numerical data generated by PlantCV pipeline #31

Closed
1 of 3 tasks
dlebauer opened this issue Nov 11, 2015 · 59 comments
Closed
1 of 3 tasks

Handle numerical data generated by PlantCV pipeline #31

dlebauer opened this issue Nov 11, 2015 · 59 comments
Assignees
Milestone

Comments

@dlebauer
Copy link
Member

dlebauer commented Nov 11, 2015

@yanliu-chn
Copy link

the image analysis scripts do output quite a bit of text info that looks like numerical data. Is that what you are talking about? I can piggyback that info as part of the metadata.

should I do that before or after David's demo? i don't want to interrupt his demo when I debug.

@dlebauer
Copy link
Member Author

It is not sufficiently urgent to risk breaking the demo. Having a working Jupyter analog would be more valuable.

@yanliu-chn
Copy link

yanliu-chn commented Nov 11, 2015

Here is an example of vis_tv output:

HEADER_SHAPES   area    hull-area   solidity    perimeter   width   height  longest_axis    center-of-mass-x    center-of-mass-y    hull_vertices   in_bounds   ellipse_center_x    ellipse_center_y    ellipse_major_axis  ellipse_minor_axis  ellipse_angle   ellipse_eccentricity
SHAPES_DATA 181008.0    1058060.0   0.171075364346  11704.7172049   1887    1109    1863    828.234149872   866.411694511   19  False   926.676330566   779.074584961   1517.16711426   793.131835938   88.3340530396   0.852472805697
HEADER_HISTOGRAM    bin-number  blue    green   red lightness   green-magenta   blue-yellow hue saturation  value
HISTOGRAM_DATA  256 [26.0, 12.0, 18.0, 15.0, 19.0, 21.0, 32.0, 36.0, 49.0, 70.0, 72.0, 102.0, 144.0, 187.0, 192.0, 223.0, 293.0, 362.0, 477.0, 584.0, 690.0, 915.0, 1218.0, 1680.0, 2226.0, 3019.0, 3818.0, 4701.0, 5120.0, 5335.0, 5702.0, 6099.0, 6218.0, 6549.0, 6852.0, 7663.0, 8260.0, 8759.0, 9359.0, 9526.0, 9118.0, 8821.0, 8141.0, 7085.0, 6391.0, 5258.0, 4107.0, 3168.0, 2439.0, 1855.0, 1597.0, 1326.0, 1018.0, 869.0, 745.0, 599.0, 553.0, 429.0, 396.0, 393.0, 351.0, 327.0, 282.0, 296.0, 278.0, 243.0, 235.0, 214.0, 220.0, 193.0, 167.0, 170.0, 167.0, 160.0, 146.0, 130.0, 132.0, 136.0, 116.0, 111.0, 102.0, 90.0, 115.0, 85.0, 88.0, 83.0, 84.0, 72.0, 66.0, 79.0, 86.0, 83.0, 87.0, 65.0, 84.0, 46.0, 72.0, 53.0, 73.0, 51.0, 50.0, 55.0, 59.0, 54.0, 57.0, 51.0, 62.0, 62.0, 46.0, 66.0, 62.0, 67.0, 58.0, 61.0, 65.0, 65.0, 87.0, 76.0, 95.0, 93.0, 112.0, 117.0, 105.0, 106.0, 119.0, 128.0, 122.0, 124.0, 102.0, 101.0, 91.0, 88.0, 91.0, 85.0, 62.0, 77.0, 58.0, 44.0, 46.0, 46.0, 42.0, 46.0, 46.0, 40.0, 35.0, 44.0, 58.0, 44.0, 33.0, 33.0, 32.0, 32.0, 28.0, 36.0, 40.0, 30.0, 25.0, 20.0, 27.0, 27.0, 25.0, 34.0, 19.0, 24.0, 22.0, 17.0, 32.0, 21.0, 21.0, 26.0, 21.0, 12.0, 16.0, 20.0, 16.0, 23.0, 13.0, 20.0, 8.0, 20.0, 6.0, 9.0, 17.0, 17.0, 19.0, 14.0, 21.0, 13.0, 10.0, 9.0, 5.0, 6.0, 5.0, 4.0, 2.0, 4.0, 4.0, 1.0, 0.0, 3.0, 2.0, 1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]  [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 4.0, 7.0, 1.0, 10.0, 5.0, 8.0, 16.0, 14.0, 20.0, 22.0, 33.0, 37.0, 27.0, 36.0, 51.0, 60.0, 79.0, 77.0, 87.0, 114.0, 145.0, 223.0, 264.0, 317.0, 453.0, 489.0, 500.0, 618.0, 637.0, 788.0, 855.0, 844.0, 893.0, 985.0, 1032.0, 1045.0, 1044.0, 985.0, 810.0, 805.0, 761.0, 744.0, 748.0, 805.0, 897.0, 1191.0, 1395.0, 1721.0, 1705.0, 1779.0, 2062.0, 2067.0, 2270.0, 2319.0, 2129.0, 2350.0, 2623.0, 2653.0, 2687.0, 2379.0, 2412.0, 2454.0, 2778.0, 3548.0, 4024.0, 4638.0, 5290.0, 4908.0, 4414.0, 3955.0, 3508.0, 3080.0, 2886.0, 2696.0, 2763.0, 3194.0, 3071.0, 3110.0, 3141.0, 3205.0, 3103.0, 3136.0, 3450.0, 3778.0, 4060.0, 4003.0, 3838.0, 3586.0, 3411.0, 2962.0, 2560.0, 2044.0, 1897.0, 1596.0, 1549.0, 1277.0, 1221.0, 1159.0, 955.0, 883.0, 749.0, 694.0, 600.0, 478.0, 417.0, 398.0, 315.0, 329.0, 298.0, 266.0, 211.0, 195.0, 178.0, 155.0, 140.0, 135.0, 97.0, 113.0, 98.0, 105.0, 103.0, 102.0, 95.0, 83.0, 72.0, 77.0, 69.0, 62.0, 71.0, 57.0, 57.0, 52.0, 47.0, 38.0, 48.0, 42.0, 44.0, 43.0, 33.0, 40.0, 32.0, 28.0, 53.0, 33.0, 44.0, 43.0, 58.0, 39.0, 50.0, 38.0, 30.0, 30.0, 34.0, 28.0, 36.0, 22.0, 23.0, 31.0, 28.0, 35.0, 45.0, 26.0, 27.0, 27.0, 29.0, 28.0, 32.0, 30.0, 31.0, 24.0, 27.0, 22.0, 34.0, 27.0, 21.0, 24.0, 18.0, 21.0, 19.0, 20.0, 24.0, 25.0, 22.0, 21.0, 19.0, 32.0, 25.0, 26.0, 26.0, 35.0, 30.0, 44.0, 44.0, 42.0, 39.0, 42.0, 45.0, 52.0, 47.0, 50.0, 62.0, 50.0, 62.0, 65.0, 73.0, 63.0, 87.0, 65.0, 72.0, 68.0, 63.0, 76.0, 78.0, 84.0, 97.0, 87.0, 84.0, 91.0, 100.0, 65.0, 81.0, 70.0, 77.0, 81.0, 73.0, 90.0, 98.0, 92.0, 84.0, 0.0]  [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 3.0, 4.0, 4.0, 18.0, 13.0, 20.0, 24.0, 21.0, 30.0, 31.0, 44.0, 48.0, 57.0, 55.0, 89.0, 125.0, 199.0, 298.0, 399.0, 486.0, 588.0, 863.0, 1034.0, 1156.0, 1282.0, 1327.0, 1414.0, 1458.0, 1503.0, 1485.0, 1522.0, 1716.0, 1935.0, 2181.0, 2633.0, 3090.0, 3281.0, 3339.0, 3438.0, 3962.0, 4386.0, 4526.0, 5013.0, 4914.0, 5226.0, 5527.0, 5933.0, 5859.0, 5726.0, 6217.0, 5525.0, 5588.0, 5456.0, 5474.0, 5234.0, 4956.0, 4419.0, 3898.0, 3479.0, 3135.0, 2856.0, 2558.0, 2267.0, 1965.0, 1978.0, 1804.0, 1563.0, 1598.0, 1410.0, 1328.0, 1291.0, 1146.0, 1106.0, 999.0, 867.0, 840.0, 782.0, 780.0, 706.0, 643.0, 555.0, 493.0, 419.0, 324.0, 267.0, 230.0, 214.0, 189.0, 167.0, 141.0, 135.0, 136.0, 124.0, 99.0, 139.0, 106.0, 92.0, 67.0, 98.0, 99.0, 83.0, 94.0, 93.0, 101.0, 76.0, 87.0, 80.0, 86.0, 80.0, 73.0, 64.0, 53.0, 87.0, 78.0, 69.0, 66.0, 73.0, 68.0, 61.0, 41.0, 55.0, 51.0, 49.0, 43.0, 48.0, 55.0, 44.0, 40.0, 39.0, 32.0, 32.0, 36.0, 38.0, 36.0, 30.0, 30.0, 32.0, 26.0, 30.0, 32.0, 25.0, 27.0, 33.0, 36.0, 18.0, 36.0, 14.0, 27.0, 22.0, 36.0, 32.0, 43.0, 22.0, 26.0, 29.0, 30.0, 30.0, 21.0, 28.0, 26.0, 34.0, 27.0, 26.0, 22.0, 32.0, 33.0, 35.0, 24.0, 24.0, 35.0, 21.0, 20.0, 23.0, 24.0, 20.0, 24.0, 25.0, 20.0, 24.0, 17.0, 25.0, 18.0, 14.0, 18.0, 15.0, 19.0, 14.0, 18.0, 16.0, 18.0, 15.0, 18.0, 14.0, 21.0, 24.0, 19.0, 16.0, 14.0, 21.0, 15.0, 29.0, 13.0, 20.0, 12.0, 12.0, 15.0, 14.0, 17.0, 15.0, 9.0, 14.0, 23.0, 10.0, 29.0, 27.0, 22.0, 18.0, 12.0, 14.0, 13.0, 17.0, 17.0, 19.0, 26.0, 19.0, 24.0, 24.0, 36.0, 35.0, 43.0, 47.0, 57.0, 59.0, 90.0, 113.0, 140.0, 156.0, 198.0, 220.0, 0.0]    [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 4.0, 2.0, 5.0, 0.0, 1.0, 11.0, 6.0, 3.0, 21.0, 10.0, 14.0, 13.0, 14.0, 11.0, 55.0, 16.0, 22.0, 50.0, 31.0, 67.0, 53.0, 91.0, 37.0, 64.0, 164.0, 67.0, 244.0, 271.0, 266.0, 459.0, 196.0, 483.0, 456.0, 618.0, 717.0, 885.0, 847.0, 867.0, 743.0, 1213.0, 970.0, 751.0, 1427.0, 351.0, 978.0, 605.0, 788.0, 843.0, 629.0, 788.0, 1004.0, 1136.0, 1485.0, 1565.0, 1538.0, 1821.0, 2095.0, 2074.0, 2361.0, 2148.0, 1809.0, 2690.0, 2499.0, 2906.0, 2938.0, 2048.0, 2563.0, 2677.0, 2907.0, 3464.0, 4700.0, 5381.0, 5252.0, 4983.0, 3684.0, 3578.0, 3731.0, 3221.0, 3199.0, 2685.0, 3607.0, 2665.0, 3184.0, 3412.0, 3457.0, 3280.0, 3324.0, 3734.0, 3654.0, 3732.0, 4430.0, 3882.0, 3473.0, 3466.0, 2613.0, 2478.0, 2269.0, 1885.0, 1544.0, 1348.0, 1328.0, 1373.0, 1077.0, 1005.0, 944.0, 909.0, 703.0, 664.0, 488.0, 457.0, 436.0, 362.0, 292.0, 327.0, 242.0, 208.0, 244.0, 174.0, 171.0, 145.0, 128.0, 110.0, 116.0, 120.0, 121.0, 99.0, 98.0, 89.0, 101.0, 82.0, 94.0, 83.0, 65.0, 84.0, 58.0, 68.0, 49.0, 78.0, 64.0, 43.0, 54.0, 41.0, 44.0, 40.0, 48.0, 39.0, 31.0, 36.0, 39.0, 46.0, 46.0, 45.0, 36.0, 45.0, 43.0, 50.0, 33.0, 38.0, 38.0, 29.0, 30.0, 45.0, 23.0, 23.0, 32.0, 29.0, 28.0, 37.0, 29.0, 37.0, 48.0, 28.0, 30.0, 20.0, 28.0, 35.0, 24.0, 25.0, 31.0, 32.0, 31.0, 22.0, 23.0, 20.0, 19.0, 26.0, 26.0, 24.0, 23.0, 22.0, 24.0, 24.0, 29.0, 28.0, 21.0, 35.0, 36.0, 16.0, 22.0, 21.0, 22.0, 23.0, 29.0, 24.0, 39.0, 34.0, 51.0, 47.0, 54.0, 88.0, 49.0, 82.0, 90.0, 90.0, 109.0, 93.0, 92.0, 96.0, 101.0, 107.0, 109.0, 134.0, 123.0, 124.0, 91.0, 107.0, 114.0, 105.0, 108.0, 135.0, 205.0, 212.0, 62.0, 25.0, 1.0, 0.0, 0.0]  [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 2.0, 4.0, 12.0, 40.0, 107.0, 288.0, 988.0, 3879.0, 11656.0, 10992.0, 11993.0, 19268.0, 14662.0, 10466.0, 8415.0, 11198.0, 20460.0, 14044.0, 9555.0, 5631.0, 5661.0, 4108.0, 3829.0, 3715.0, 3207.0, 2998.0, 1815.0, 584.0, 330.0, 232.0, 185.0, 131.0, 116.0, 112.0, 81.0, 94.0, 85.0, 36.0, 18.0, 6.0, 4.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]    [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 2.0, 1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 1.0, 1.0, 4.0, 2.0, 1.0, 11.0, 5.0, 12.0, 16.0, 17.0, 25.0, 45.0, 86.0, 341.0, 509.0, 829.0, 1944.0, 2449.0, 2897.0, 2519.0, 2993.0, 3068.0, 4980.0, 6588.0, 8857.0, 10009.0, 10921.0, 9038.0, 4040.0, 3637.0, 3870.0, 4149.0, 11870.0, 10313.0, 12701.0, 11273.0, 10488.0, 7799.0, 7242.0, 5151.0, 4414.0, 3019.0, 3054.0, 2082.0, 1758.0, 1138.0, 887.0, 658.0, 217.0, 196.0, 156.0, 150.0, 178.0, 205.0, 236.0, 160.0, 348.0, 176.0, 377.0, 388.0, 166.0, 138.0, 158.0, 22.0, 9.0, 4.0, 3.0, 3.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]   [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 4.0, 5.0, 9.0, 110.0, 212.0, 207.0, 292.0, 305.0, 455.0, 326.0, 366.0, 631.0, 419.0, 503.0, 499.0, 424.0, 778.0, 615.0, 639.0, 954.0, 1949.0, 2793.0, 5174.0, 7703.0, 10616.0, 16848.0, 16137.0, 25735.0, 32759.0, 26281.0, 17092.0, 5838.0, 1638.0, 738.0, 625.0, 216.0, 283.0, 132.0, 91.0, 61.0, 71.0, 26.0, 53.0, 64.0, 49.0, 59.0, 35.0, 39.0, 30.0, 34.0, 18.0, 8.0, 14.0, 3.0, 6.0, 3.0, 5.0, 4.0, 3.0, 3.0, 0.0, 1.0, 0.0, 1.0, 2.0, 2.0, 0.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 2.0, 1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]    [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.0, 1.0, 2.0, 0.0, 0.0, 3.0, 2.0, 1.0, 3.0, 2.0, 1.0, 1.0, 6.0, 3.0, 3.0, 3.0, 2.0, 2.0, 1.0, 3.0, 6.0, 9.0, 8.0, 5.0, 7.0, 12.0, 29.0, 22.0, 24.0, 38.0, 31.0, 38.0, 47.0, 36.0, 43.0, 35.0, 51.0, 52.0, 54.0, 70.0, 65.0, 62.0, 61.0, 90.0, 87.0, 76.0, 86.0, 85.0, 89.0, 94.0, 75.0, 99.0, 103.0, 87.0, 107.0, 87.0, 112.0, 123.0, 105.0, 125.0, 154.0, 121.0, 134.0, 156.0, 157.0, 138.0, 165.0, 173.0, 170.0, 173.0, 189.0, 183.0, 232.0, 181.0, 215.0, 197.0, 249.0, 244.0, 229.0, 261.0, 268.0, 253.0, 276.0, 290.0, 301.0, 430.0, 320.0, 380.0, 419.0, 464.0, 501.0, 485.0, 571.0, 633.0, 580.0, 637.0, 739.0, 747.0, 760.0, 1206.0, 797.0, 1324.0, 1387.0, 1565.0, 1111.0, 2311.0, 2455.0, 1619.0, 3617.0, 2976.0, 3230.0, 3247.0, 3536.0, 2641.0, 3214.0, 2670.0, 2576.0, 2505.0, 2472.0, 2201.0, 2254.0, 2267.0, 2300.0, 2429.0, 2322.0, 2567.0, 2151.0, 3097.0, 2094.0, 2967.0, 3089.0, 3422.0, 2563.0, 3798.0, 4128.0, 3201.0, 3720.0, 3502.0, 4020.0, 3294.0, 3490.0, 3514.0, 2651.0, 3070.0, 3116.0, 2431.0, 2512.0, 2067.0, 2567.0, 2061.0, 2592.0, 2331.0, 1946.0, 2336.0, 1957.0, 1974.0, 1642.0, 1920.0, 1327.0, 1562.0, 1300.0, 1293.0, 1084.0, 870.0, 980.0, 646.0, 584.0, 678.0, 454.0, 428.0, 317.0, 276.0, 252.0, 190.0, 185.0, 150.0, 112.0, 134.0, 100.0, 85.0, 80.0, 63.0, 55.0, 45.0, 42.0, 45.0, 28.0, 30.0, 25.0, 27.0, 29.0, 23.0, 11.0, 19.0, 14.0, 11.0, 19.0, 10.0, 5.0, 10.0, 9.0, 8.0, 5.0, 11.0, 9.0, 6.0, 4.0, 3.0, 4.0, 5.0, 4.0, 5.0, 1.0, 5.0, 0.0, 3.0, 4.0, 3.0, 3.0, 3.0, 3.0, 1.0, 0.0, 3.0, 4.0, 2.0, 2.0, 1.0, 0.0, 0.0, 0.0, 0.0] [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 4.0, 6.0, 1.0, 10.0, 5.0, 8.0, 16.0, 14.0, 20.0, 21.0, 33.0, 34.0, 28.0, 36.0, 54.0, 60.0, 78.0, 76.0, 85.0, 115.0, 145.0, 224.0, 265.0, 317.0, 453.0, 490.0, 501.0, 618.0, 636.0, 788.0, 854.0, 845.0, 893.0, 986.0, 1032.0, 1045.0, 1043.0, 984.0, 811.0, 806.0, 760.0, 744.0, 748.0, 806.0, 897.0, 1190.0, 1395.0, 1721.0, 1706.0, 1778.0, 2062.0, 2067.0, 2271.0, 2319.0, 2129.0, 2350.0, 2623.0, 2653.0, 2687.0, 2379.0, 2410.0, 2454.0, 2779.0, 3548.0, 4024.0, 4637.0, 5290.0, 4907.0, 4415.0, 3956.0, 3509.0, 3080.0, 2886.0, 2696.0, 2762.0, 3195.0, 3070.0, 3111.0, 3141.0, 3205.0, 3102.0, 3135.0, 3450.0, 3778.0, 4060.0, 4001.0, 3838.0, 3585.0, 3410.0, 2962.0, 2560.0, 2047.0, 1898.0, 1596.0, 1546.0, 1276.0, 1220.0, 1157.0, 956.0, 883.0, 748.0, 694.0, 603.0, 479.0, 419.0, 396.0, 314.0, 329.0, 297.0, 266.0, 208.0, 192.0, 182.0, 156.0, 138.0, 136.0, 99.0, 111.0, 95.0, 104.0, 104.0, 101.0, 95.0, 81.0, 71.0, 74.0, 68.0, 61.0, 72.0, 57.0, 53.0, 48.0, 44.0, 37.0, 47.0, 42.0, 42.0, 41.0, 35.0, 37.0, 32.0, 30.0, 52.0, 33.0, 44.0, 42.0, 59.0, 38.0, 48.0, 40.0, 26.0, 29.0, 29.0, 27.0, 38.0, 28.0, 23.0, 33.0, 27.0, 39.0, 45.0, 26.0, 30.0, 30.0, 24.0, 28.0, 30.0, 31.0, 28.0, 22.0, 26.0, 21.0, 28.0, 23.0, 17.0, 21.0, 16.0, 22.0, 17.0, 15.0, 19.0, 23.0, 18.0, 20.0, 9.0, 27.0, 21.0, 23.0, 18.0, 23.0, 28.0, 20.0, 29.0, 14.0, 18.0, 14.0, 12.0, 17.0, 28.0, 14.0, 15.0, 17.0, 14.0, 25.0, 26.0, 25.0, 22.0, 19.0, 17.0, 17.0, 16.0, 21.0, 24.0, 28.0, 24.0, 24.0, 20.0, 32.0, 34.0, 32.0, 48.0, 45.0, 40.0, 84.0, 84.0, 112.0, 151.0, 178.0, 225.0, 0.0]

@nfahlgren
Copy link
Member

Yep, that's the sort of output I mean. This is the raw output from an individual analysis script, which I think is what is integrated into the demo. Alternatively we have a script that parallelizes the processing of individual images and aggregates/reformats the results, but that might not work in the computing-pipeline framework?

@yanliu-chn
Copy link

If the script you mentioned works in parallel computing environment, we will take it and deploy on our supercomputers. I believe this is part of the pipeline framework. The current extractor does not work on cluster yet. But it is a work ongoing.

could you share a pointer to that script?

@nfahlgren
Copy link
Member

It's currently here: plantcv/scripts/dev/image_analysis.py

We will be working on cleaning up the PlantCV repository soon to make everything clearer and less cluttered. Right now this script only uses multiprocessing but I plan on adding support for batching systems in the near future. We can add support for whatever methods are useful for the system at UIUC if that's helpful.

@yanliu-chn
Copy link

ah, I see. for batch processing images, we have quite a few options to achieve automation and max performance on cluster nodes. using your script is one option too. the decision depends on the data pipeline design, e.g., the granularity of image batches, how often to process them, data movement b/w cluster and data storage.

we can have a discussion as next step for these design decisions.

@dlebauer
Copy link
Member Author

the normalization/calibration step will be integrated into the plantcv pipeline by danforthcenter/plantcv#19

@nfahlgren
Copy link
Member

@dlebauer @gsrohde @robkooper @max-zilla I have a script setup now that can be run by the Clowder extractor (in theory). It takes an RGB and NIR image as inputs and also needs the "perspective" metadata value from Clowder (side-view or top-view). It currently spits out a table-like raw output, but it would be easy for me to reformat it. What is the best way I can output data for both Clowder and BETYdb? I was thinking JSON to put the results in Clowder so that @gsrohde could grab the data from there but we had talked about a table last time we spoke. Would the table be a file added to the dataset or something else?

@dlebauer
Copy link
Member Author

dlebauer commented Apr 26, 2016

I think we decided to put the data in tabular (csv?) format. @gsrohde is writing the data importer that will convert the table to the xml format required by BETYdb. BETYdb will then be able to export as json, xml, or a table.

Lets running this on the same Clowder instance as the field scanner (terraref.ncsa.illinois.edu/clowder). The next question is if we should put the data on Roger at /projects/arpae/terraref/raw_data/danforth/ or use the clowder API? Should we keep copies of the original and derived data on Roger or import to the database?

@nfahlgren
Copy link
Member

If the script output a CSV file, would it need to be explicitly added to Clowder? Or I guess in other words I'm not necessarily certain how Clowder captures the output or whether I need to post it.

@yanliu-chn
Copy link

@nfahlgren , could you give some details about the new script? the git branch version, script location, sample run commands, sample data, etc.? that way, @caicai89- can pick it up and start working on integrating into plantcv extractor.

@nfahlgren
Copy link
Member

@yanliu-chn the new script relies on the latest development version of PlantCV: danforthcenter/plantcv@ead12f2. I just pushed the draft version of the script to the computing-pipeline repository here: https://github.com/terraref/computing-pipeline/blob/master/scripts/plantcv/PlantcvClowderIndoorAnalysis.py. In addition to needing the PlantCV library it relies on a hard-coded image mask file from PlantCV (mask_brass_tv_z1_L1.png). We probably need to reference it differently, but I may be able to bypass the need for the image altogether.

@dlebauer
Copy link
Member Author

If the script output a CSV file, would it need to be explicitly added to Clowder?

@robkooper can you address this? I think that the csv file should be explicitly added to Clowder, and that the code that inserts into BETYdb will need to find the csv file and the metadata file.

@yanliu-chn
Copy link

yanliu-chn commented Apr 26, 2016

@nfahlgren @dlebauer how do I know if an NIR or VIS image is a top or side view?

@caicai89- Yaping, on ROGER, please check out Noah's plantcv version and the script mentioned above. We have a few sample images in /gpfs/largeblockFS/scratch/arpae/plantcv-input/samples/ . To set up opencv and plantcv environment, please refer to /gpfs/largeblockFS/projects/arpae/sw/extractors-plantcv/bin/extract.sh and the following bash setup:

module purge
module load git mpich gdal2-stack anaconda parallel
export PLANTCV_HOME=/projects/arpae/sw/plantcv
export PYTHONPATH=/projects/arpae/sw/opencv/lib/python2.7/site-packages:/project
s/arpae/sw/plantcv/lib:$PYTHONPATH
export PLANTCV_VENV=/projects/arpae/sw/pyenv.plantiv
export PLANTCV_EX=/projects/arpae/sw/extractors-plantcv

@yanliu-chn
Copy link

in image metadata:

  • camera_type differentiates NIR or VIS
  • perspective tells top-view or side-view
  • rotation_angle: number

Rule to pair two images as input to Noah's script: camera_type is different; rotation_angle must be the same; perspective must be the same. Each snapshot currently contains 10 images. The pairing process should create 5 pairs and call Noah's script 5 times.

e.g.: http://141.142.209.122/clowder/files/56d48457e4b0c7e3b16ea709

@yanliu-chn
Copy link

Summary for the discussion with Noah and Luigi:

Inside of file extractor, we can access dataset metadata. We can leverage this feature to implement dataset-level plantcv extractor.

We define field in dataset metadata, say plantcv_file_info, as an array. Each element in the array has the following info:

{ "fileid": "$fileId", "camera_type": "NIR|VIS", "perspective":  "side|top-view", rotation_angle: number (0-360) }

We also have a dataset metadata field called plantcv_processed to record files that have been processed at dataset level.

The update to these two fields is add only, no override.

Then the logic of a file-based extractor would be:

  • retrieve dataset metadata (keep a local copy, readonly)
  • new dataset metadata={}
  • do file-level processing; register results with Clowder; add one entry in new dataset metadata (local copy)
  • do dataset-level processing:
    • given dataset metadata and local file processing results, find NIR and VIS pairs
    • if found, call Noah's script to process:
      • register output csv as a new file in the dataset
      • add one entry in plantcv_processed
    • write back added dataset metadata (append only).

@robkooper please check if it works.

@nfahlgren
Copy link
Member

@dlebauer @yanliu-chn I just thought of one more thing, do we want to populate BETYdb with data for a plant or the individual images? If we need to aggregate the data from a snapshot (all one plant) then we will need to process the whole Clowder dataset and not just an image pair. We would then post only one result file back to Clowder.

@yanliu-chn
Copy link

Either way i guess we have to append the tabular output of each pair to dataset metadata since there is no dataset-level extractor.

@dlebauer
Copy link
Member Author

@nfahlgren the general idea is that BETYdb will hold the 'trait vectors' that could be used in GWAS. It can store data at the subsample, replicate plant / plot, or site level. I think it would make sense to aggregate to the plant level for each time point.

@nfahlgren
Copy link
Member

@dlebauer makes sense. I wonder if the extractor could just provide the script with the dataset key? Then I can query out the files with the API.

The general format of the output would looks similar to this (but with more traits):

plant_id,datetime,treatment,genotype,group,date,dap,solidity,outlier,sv_area,tv_area,extent_x,extent_y,height_above_bound,fw_biomass,dw_biomass,height_width_ratio,tiller_count,wue
Dp2AB000127,1386431350,0,B100,B100-0,2013-12-07 09:49:10,11.4091435185185,0.478404862032,False,2086.72707778917,2955.32688355849,1.98029381595354,1.26862572584524,1.26862572584524,-0.192056152391855,-0.0399180898450307,0.640625,3.81555081933358,11.465533394446

@yanliu-chn
Copy link

that is possible. @nfahlgren so this output is generated by looking at all 10 images or just 2?

@nfahlgren
Copy link
Member

@yanliu-chn that's right, the output would be the result of looking at all 10 images instead of only two. Internally the image pairs would be analyzed together, but the overall results would be aggregated.

@yanliu-chn
Copy link

@nfahlgren So does it mean you will have a separate script to look at all 10 images? the current script takes one NIR and one VIS as input.

@nfahlgren
Copy link
Member

@yanliu-chn I will modify the current script to read all image files in a given dataset.

@ghost ghost added this to the May 2016 milestone May 12, 2016
@max-zilla
Copy link
Contributor

@robkooper does this pika IncompatibleProtocolError look familiar? I've not encountered this before.

2016-05-11 10:50:12,015 ERROR : pika.adapters.base_connection - Read empty data, calling disconnect
2016-05-11 10:50:12,016 ERROR : pika.adapters.base_connection - Incompatible Protocol Versions

@robkooper
Copy link
Member

I think this might be related to an older version of pika, try and see if you can upgrade it.

@max-zilla
Copy link
Contributor

2 other pieces that @caicai89- is waiting for:

@caicai89-
Copy link

caicai89- commented May 12, 2016

@robkooper I tried and it did not work.
My configuration is the following.

import os

# name to show in rabbitmq queue list
extractorName = os.getenv('RABBITMQ_QUEUE', "terra.plantcv")

# URL to be used for connecting to rabbitmq
rabbitmqURL = os.getenv('RABBITMQ_URI', "amqp://xxx:xxxxxxx@rabbitmq.ncsa.illinois.edu:15672")

# name of rabbitmq exchange
rabbitmqExchange = os.getenv('RABBITMQ_EXCHANGE', "terra")

# type of files to process
messageType = "*.file.image.#"

# trust certificates, set this to false for self signed certificates
sslVerify = os.getenv('RABBITMQ_SSLVERIFY', False)

@robkooper
Copy link
Member

you will need to specify the host in the rabbitmq url, in our case that should be clowder-dev for now. so set your environment variable RABBITMQ_URI="amqp://xxx:xxxxxxx@rabbitmq.ncsa.illinois.edu:15672/clowder-dev"

@caicai89-
Copy link

@robkooper same error...

@caicai89-
Copy link

@robkooper currently, the pika version is 0.10.0

@nfahlgren
Copy link
Member

@max-zilla @robkooper I'm finishing up the PlantCV extractor code and am running into an issue when I try to post results back to the files in Clowder. I might just be using the wrong API call. I have the PlantCV results encoded in a JSON string and am using a call like:

r = sess.post('http://141.142.209.122/clowder/api/files/57452ef3e4b0efbe2dc3d862/metadata.jsonld',
                     headers={"Content-Type": "application/json"}, data=json.dumps(metadata))

I get an error 500 when I do this.

@max-zilla
Copy link
Contributor

@nfahlgren can you share the metadata object you're sending? I'll look into it.

I know that the metadata we had for a while had a field name that was something like "other metadata here..." and the three periods in the name were causing errors with the JSON parsing in Clowder - I had a little "clean_json" method to change those periods to underscores.

@nfahlgren
Copy link
Member

@max-zilla they are a bit different, depending on the image, but it definitely dies on the first one which looks like this:

{"hull_vertices": 39, "in_bounds": true, "ellipse_center_x": 1688.764404296875, "ellipse_angle": 145.23851013183594, "ellipse_eccentricity": 0.87339119634271944, "height": 2005, "ellipse_minor_axis": 1185.1163330078125, "below_bound_area": 6364, "green-magenta": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 5.0, 11.0, 5.0, 21.0, 17.0, 24.0, 42.0, 55.0, 80.0, 130.0, 217.0, 272.0, 398.0, 611.0, 989.0, 1567.0, 2468.0, 3658.0, 5789.0, 9052.0, 12873.0, 15612.0, 16416.0, 14682.0, 11728.0, 8782.0, 6832.0, 4894.0, 3708.0, 2822.0, 2097.0, 1737.0, 1372.0, 1132.0, 896.0, 719.0, 570.0, 465.0, 410.0, 346.0, 277.0, 212.0, 161.0, 111.0, 74.0, 50.0, 39.0, 18.0, 12.0, 9.0, 5.0, 6.0, 1.0, 0.0, 1.0, 3.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], "longest_axis": 1943, "blue": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 2.0, 2.0, 18.0, 54.0, 57.0, 132.0, 139.0, 152.0, 189.0, 208.0, 238.0, 297.0, 348.0, 372.0, 533.0, 743.0, 1035.0, 1331.0, 1674.0, 2212.0, 2215.0, 2556.0, 2574.0, 2967.0, 3133.0, 3340.0, 3329.0, 3401.0, 3401.0, 3634.0, 3665.0, 3440.0, 3370.0, 3226.0, 3127.0, 3085.0, 3001.0, 2986.0, 3018.0, 2817.0, 2797.0, 2641.0, 2601.0, 2411.0, 2346.0, 2111.0, 2020.0, 1776.0, 1640.0, 1589.0, 1366.0, 1445.0, 1287.0, 1234.0, 1151.0, 1087.0, 1005.0, 959.0, 887.0, 824.0, 797.0, 709.0, 671.0, 610.0, 582.0, 589.0, 556.0, 539.0, 497.0, 493.0, 501.0, 460.0, 464.0, 456.0, 427.0, 401.0, 423.0, 397.0, 372.0, 350.0, 364.0, 330.0, 292.0, 287.0, 336.0, 321.0, 300.0, 296.0, 250.0, 274.0, 267.0, 280.0, 240.0, 222.0, 257.0, 217.0, 226.0, 222.0, 217.0, 224.0, 242.0, 212.0, 191.0, 218.0, 174.0, 191.0, 205.0, 203.0, 201.0, 145.0, 156.0, 191.0, 152.0, 180.0, 142.0, 174.0, 153.0, 156.0, 150.0, 148.0, 153.0, 170.0, 132.0, 137.0, 161.0, 133.0, 156.0, 143.0, 127.0, 135.0, 138.0, 124.0, 136.0, 142.0, 122.0, 116.0, 135.0, 122.0, 128.0, 143.0, 115.0, 121.0, 135.0, 131.0, 122.0, 121.0, 112.0, 129.0, 140.0, 100.0, 115.0, 128.0, 137.0, 124.0, 129.0, 130.0, 114.0, 133.0, 118.0, 134.0, 134.0, 135.0, 116.0, 113.0, 110.0, 135.0, 134.0, 113.0, 109.0, 122.0, 117.0, 125.0, 127.0, 101.0, 111.0, 118.0, 115.0, 110.0, 86.0, 114.0, 100.0, 100.0, 84.0, 75.0, 89.0, 91.0, 94.0, 75.0, 85.0, 77.0, 64.0, 66.0, 81.0, 80.0, 60.0, 71.0, 71.0, 61.0, 69.0, 56.0, 61.0, 43.0, 40.0, 52.0, 41.0, 41.0, 37.0, 27.0, 26.0, 26.0, 17.0, 20.0, 20.0, 15.0, 17.0, 21.0, 10.0, 19.0, 16.0, 17.0, 14.0, 12.0, 12.0, 11.0, 7.0, 16.0, 8.0, 3.0, 4.0, 6.0, 3.0, 9.0, 3.0, 6.0, 5.0, 3.0, 7.0, 3.0, 5.0, 9.0, 4.0, 5.0, 0.0], "height_above_bound": 1657, "area": 134488.0, "lightness": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 3.0, 1.0, 3.0, 2.0, 4.0, 4.0, 0.0, 6.0, 7.0, 4.0, 4.0, 7.0, 4.0, 11.0, 4.0, 21.0, 10.0, 30.0, 43.0, 21.0, 81.0, 119.0, 111.0, 137.0, 78.0, 165.0, 210.0, 209.0, 281.0, 487.0, 433.0, 562.0, 627.0, 1098.0, 737.0, 796.0, 1367.0, 1043.0, 1578.0, 1112.0, 1836.0, 1894.0, 1240.0, 2195.0, 2545.0, 2450.0, 2382.0, 2570.0, 2614.0, 2310.0, 2222.0, 2251.0, 2979.0, 2008.0, 1774.0, 2165.0, 1685.0, 2233.0, 2194.0, 1608.0, 1915.0, 1934.0, 1904.0, 1879.0, 1857.0, 1616.0, 1635.0, 1713.0, 1709.0, 1713.0, 2207.0, 1576.0, 1902.0, 1471.0, 1859.0, 1422.0, 1651.0, 1617.0, 1587.0, 1568.0, 1469.0, 1430.0, 1402.0, 1268.0, 1358.0, 1090.0, 1014.0, 1148.0, 876.0, 997.0, 906.0, 901.0, 844.0, 668.0, 755.0, 808.0, 628.0, 597.0, 557.0, 587.0, 494.0, 588.0, 461.0, 525.0, 496.0, 435.0, 414.0, 438.0, 440.0, 387.0, 406.0, 373.0, 364.0, 379.0, 382.0, 296.0, 345.0, 337.0, 338.0, 336.0, 304.0, 305.0, 333.0, 265.0, 314.0, 254.0, 254.0, 258.0, 247.0, 248.0, 222.0, 241.0, 243.0, 220.0, 251.0, 199.0, 222.0, 161.0, 204.0, 182.0, 205.0, 180.0, 180.0, 192.0, 177.0, 184.0, 159.0, 150.0, 173.0, 154.0, 135.0, 170.0, 134.0, 180.0, 141.0, 153.0, 166.0, 152.0, 149.0, 153.0, 147.0, 129.0, 167.0, 147.0, 153.0, 150.0, 162.0, 162.0, 131.0, 164.0, 134.0, 161.0, 126.0, 129.0, 159.0, 148.0, 127.0, 160.0, 132.0, 123.0, 133.0, 133.0, 133.0, 141.0, 132.0, 125.0, 134.0, 146.0, 114.0, 140.0, 147.0, 137.0, 140.0, 149.0, 125.0, 150.0, 142.0, 163.0, 166.0, 138.0, 126.0, 144.0, 129.0, 133.0, 122.0, 128.0, 130.0, 124.0, 122.0, 121.0, 119.0, 110.0, 108.0, 94.0, 130.0, 97.0, 125.0, 104.0, 111.0, 126.0, 119.0, 137.0, 166.0, 169.0, 128.0, 115.0, 125.0, 159.0, 78.0, 36.0, 0.0], "ellipse_major_axis": 2433.4072265625, "hull-area": 1590643.5, "width": 1518, "height_below_bound": 348, "above_bound_area": 128124, "perimeter": 20545.774775624275, "hue": [74.0, 1.0, 1.0, 2.0, 5.0, 5.0, 5.0, 18.0, 25.0, 24.0, 47.0, 50.0, 80.0, 106.0, 163.0, 239.0, 351.0, 374.0, 537.0, 520.0, 646.0, 774.0, 868.0, 1053.0, 1096.0, 1151.0, 1306.0, 1373.0, 1571.0, 1677.0, 1751.0, 1892.0, 2197.0, 2550.0, 2903.0, 3528.0, 4169.0, 4740.0, 7038.0, 8206.0, 10060.0, 11952.0, 12326.0, 11516.0, 9951.0, 8058.0, 5184.0, 3539.0, 2167.0, 1329.0, 866.0, 571.0, 344.0, 320.0, 254.0, 222.0, 206.0, 158.0, 139.0, 121.0, 202.0, 124.0, 163.0, 129.0, 133.0, 138.0, 130.0, 88.0, 99.0, 97.0, 89.0, 64.0, 65.0, 45.0, 46.0, 46.0, 26.0, 32.0, 30.0, 23.0, 23.0, 17.0, 10.0, 16.0, 12.0, 9.0, 15.0, 8.0, 7.0, 7.0, 48.0, 6.0, 4.0, 10.0, 10.0, 7.0, 13.0, 5.0, 9.0, 7.0, 9.0, 5.0, 6.0, 10.0, 10.0, 4.0, 7.0, 3.0, 4.0, 1.0, 1.0, 4.0, 0.0, 2.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 2.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], "saturation": [69.0, 3.0, 3.0, 8.0, 9.0, 11.0, 15.0, 19.0, 19.0, 23.0, 24.0, 29.0, 25.0, 40.0, 48.0, 45.0, 52.0, 44.0, 54.0, 61.0, 52.0, 54.0, 73.0, 58.0, 75.0, 80.0, 76.0, 68.0, 78.0, 85.0, 86.0, 108.0, 102.0, 108.0, 108.0, 136.0, 167.0, 185.0, 169.0, 186.0, 159.0, 202.0, 205.0, 197.0, 241.0, 255.0, 254.0, 248.0, 252.0, 251.0, 287.0, 306.0, 283.0, 327.0, 293.0, 302.0, 367.0, 386.0, 406.0, 449.0, 471.0, 481.0, 516.0, 588.0, 561.0, 621.0, 619.0, 636.0, 772.0, 689.0, 787.0, 775.0, 776.0, 836.0, 828.0, 802.0, 822.0, 884.0, 977.0, 916.0, 959.0, 1119.0, 993.0, 1104.0, 1179.0, 1154.0, 1290.0, 1285.0, 1405.0, 1464.0, 1615.0, 1447.0, 1682.0, 1787.0, 1825.0, 1799.0, 2077.0, 1922.0, 2114.0, 2164.0, 2296.0, 2607.0, 1847.0, 2702.0, 2370.0, 2443.0, 2506.0, 2342.0, 2600.0, 2497.0, 2539.0, 2324.0, 2444.0, 2492.0, 2389.0, 2352.0, 2254.0, 2159.0, 1997.0, 2079.0, 2001.0, 1773.0, 1817.0, 1610.0, 1916.0, 1129.0, 2006.0, 1228.0, 1260.0, 1690.0, 877.0, 1466.0, 882.0, 1065.0, 922.0, 1040.0, 857.0, 741.0, 882.0, 711.0, 677.0, 557.0, 569.0, 609.0, 482.0, 437.0, 400.0, 360.0, 331.0, 288.0, 265.0, 228.0, 248.0, 165.0, 239.0, 178.0, 139.0, 128.0, 144.0, 175.0, 131.0, 119.0, 100.0, 124.0, 105.0, 112.0, 87.0, 82.0, 54.0, 88.0, 96.0, 70.0, 33.0, 82.0, 54.0, 59.0, 43.0, 46.0, 33.0, 22.0, 20.0, 19.0, 24.0, 18.0, 9.0, 10.0, 13.0, 4.0, 9.0, 10.0, 0.0, 5.0, 4.0, 0.0, 0.0, 2.0, 1.0, 1.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], "percent_above_bound_area": 95.26797929926833, "solidity": 0.08454942920899623, "blue-yellow": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 2.0, 2.0, 2.0, 3.0, 4.0, 3.0, 3.0, 4.0, 6.0, 3.0, 11.0, 7.0, 12.0, 23.0, 37.0, 39.0, 66.0, 132.0, 83.0, 108.0, 129.0, 172.0, 191.0, 274.0, 329.0, 474.0, 766.0, 1479.0, 2191.0, 2848.0, 3914.0, 5071.0, 7094.0, 9362.0, 10723.0, 12053.0, 11641.0, 10961.0, 9888.0, 8566.0, 7568.0, 5844.0, 4691.0, 3452.0, 2808.0, 2160.0, 1726.0, 1490.0, 1362.0, 1152.0, 848.0, 640.0, 459.0, 375.0, 285.0, 270.0, 197.0, 158.0, 108.0, 68.0, 41.0, 23.0, 22.0, 11.0, 14.0, 10.0, 10.0, 6.0, 2.0, 6.0, 4.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], "percent_below_bound_area": 4.732020700731663, "center-of-mass-y": 769.3754610076735, "center-of-mass-x": 1303.4009577062639, "ellipse_center_y": 1190.86962890625, "value": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 2.0, 3.0, 2.0, 3.0, 3.0, 5.0, 3.0, 4.0, 5.0, 11.0, 6.0, 10.0, 20.0, 23.0, 37.0, 57.0, 79.0, 96.0, 120.0, 124.0, 191.0, 232.0, 262.0, 359.0, 423.0, 515.0, 604.0, 775.0, 909.0, 876.0, 1053.0, 1155.0, 1378.0, 1612.0, 1705.0, 1765.0, 1965.0, 2062.0, 2437.0, 2474.0, 2711.0, 2812.0, 2640.0, 2816.0, 2555.0, 2596.0, 2342.0, 2286.0, 2119.0, 2036.0, 2095.0, 1926.0, 2090.0, 2046.0, 2016.0, 1971.0, 2029.0, 1955.0, 1848.0, 1689.0, 1775.0, 1904.0, 1818.0, 1952.0, 1825.0, 1795.0, 1807.0, 1782.0, 1712.0, 1650.0, 1552.0, 1486.0, 1478.0, 1480.0, 1354.0, 1316.0, 1175.0, 1216.0, 1075.0, 1015.0, 904.0, 939.0, 933.0, 924.0, 822.0, 783.0, 803.0, 671.0, 648.0, 610.0, 615.0, 559.0, 512.0, 559.0, 460.0, 462.0, 413.0, 440.0, 415.0, 395.0, 399.0, 395.0, 368.0, 361.0, 330.0, 350.0, 348.0, 310.0, 323.0, 314.0, 329.0, 318.0, 319.0, 334.0, 307.0, 271.0, 285.0, 230.0, 269.0, 230.0, 236.0, 243.0, 230.0, 220.0, 265.0, 246.0, 214.0, 205.0, 179.0, 190.0, 186.0, 179.0, 187.0, 173.0, 185.0, 177.0, 183.0, 171.0, 153.0, 188.0, 175.0, 172.0, 165.0, 158.0, 154.0, 136.0, 152.0, 148.0, 154.0, 144.0, 162.0, 134.0, 144.0, 158.0, 143.0, 150.0, 175.0, 175.0, 140.0, 155.0, 149.0, 161.0, 137.0, 157.0, 154.0, 140.0, 138.0, 141.0, 140.0, 139.0, 126.0, 133.0, 129.0, 119.0, 137.0, 118.0, 150.0, 122.0, 138.0, 120.0, 112.0, 115.0, 147.0, 110.0, 111.0, 130.0, 135.0, 138.0, 128.0, 120.0, 129.0, 127.0, 143.0, 126.0, 127.0, 120.0, 132.0, 121.0, 136.0, 131.0, 106.0, 106.0, 118.0, 107.0, 95.0, 89.0, 109.0, 104.0, 86.0, 100.0, 94.0, 96.0, 77.0, 63.0, 60.0, 76.0, 74.0, 78.0, 62.0, 67.0, 68.0, 73.0, 74.0, 80.0, 62.0, 0.0], "green": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 2.0, 2.0, 3.0, 2.0, 0.0, 3.0, 7.0, 3.0, 7.0, 2.0, 7.0, 5.0, 6.0, 11.0, 15.0, 12.0, 15.0, 25.0, 27.0, 36.0, 54.0, 84.0, 92.0, 120.0, 129.0, 189.0, 236.0, 274.0, 360.0, 416.0, 514.0, 604.0, 783.0, 919.0, 874.0, 1051.0, 1165.0, 1387.0, 1609.0, 1709.0, 1767.0, 1981.0, 2070.0, 2448.0, 2475.0, 2698.0, 2814.0, 2653.0, 2809.0, 2555.0, 2601.0, 2355.0, 2293.0, 2117.0, 2033.0, 2109.0, 1948.0, 2109.0, 2066.0, 2022.0, 2007.0, 2056.0, 1971.0, 1861.0, 1717.0, 1774.0, 1915.0, 1847.0, 1994.0, 1863.0, 1848.0, 1865.0, 1820.0, 1747.0, 1682.0, 1583.0, 1515.0, 1534.0, 1495.0, 1398.0, 1362.0, 1244.0, 1235.0, 1119.0, 1044.0, 954.0, 970.0, 964.0, 924.0, 886.0, 830.0, 812.0, 678.0, 664.0, 629.0, 631.0, 563.0, 557.0, 569.0, 467.0, 475.0, 407.0, 460.0, 429.0, 405.0, 414.0, 420.0, 359.0, 370.0, 325.0, 341.0, 357.0, 330.0, 311.0, 314.0, 333.0, 292.0, 320.0, 321.0, 280.0, 268.0, 257.0, 241.0, 256.0, 219.0, 241.0, 251.0, 201.0, 211.0, 230.0, 214.0, 197.0, 201.0, 193.0, 162.0, 183.0, 178.0, 158.0, 177.0, 176.0, 147.0, 158.0, 167.0, 145.0, 149.0, 162.0, 159.0, 127.0, 148.0, 128.0, 146.0, 137.0, 143.0, 155.0, 127.0, 145.0, 119.0, 130.0, 123.0, 152.0, 134.0, 162.0, 137.0, 125.0, 144.0, 136.0, 134.0, 123.0, 135.0, 115.0, 131.0, 138.0, 147.0, 124.0, 127.0, 125.0, 129.0, 130.0, 119.0, 117.0, 130.0, 138.0, 104.0, 117.0, 106.0, 111.0, 136.0, 136.0, 120.0, 130.0, 131.0, 122.0, 142.0, 121.0, 123.0, 114.0, 126.0, 145.0, 135.0, 118.0, 134.0, 135.0, 125.0, 134.0, 126.0, 96.0, 116.0, 117.0, 96.0, 96.0, 90.0, 109.0, 93.0, 91.0, 91.0, 106.0, 104.0, 70.0, 80.0, 54.0, 76.0, 75.0, 72.0, 57.0, 61.0, 58.0, 51.0, 60.0, 50.0, 44.0, 0.0], "red": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 2.0, 7.0, 4.0, 5.0, 9.0, 14.0, 17.0, 30.0, 53.0, 62.0, 125.0, 154.0, 219.0, 251.0, 338.0, 426.0, 565.0, 671.0, 824.0, 955.0, 1225.0, 1306.0, 1553.0, 1731.0, 1840.0, 1888.0, 2026.0, 2359.0, 2438.0, 2661.0, 2734.0, 2871.0, 2805.0, 2819.0, 2772.0, 2555.0, 2369.0, 2375.0, 2383.0, 2247.0, 2082.0, 1988.0, 1807.0, 1919.0, 1881.0, 2103.0, 1875.0, 1904.0, 1927.0, 1816.0, 1925.0, 1730.0, 1697.0, 1727.0, 1678.0, 1707.0, 1569.0, 1648.0, 1617.0, 1524.0, 1548.0, 1426.0, 1449.0, 1356.0, 1321.0, 1219.0, 1077.0, 1034.0, 1103.0, 934.0, 900.0, 842.0, 834.0, 812.0, 758.0, 685.0, 714.0, 608.0, 565.0, 603.0, 537.0, 518.0, 506.0, 481.0, 476.0, 519.0, 455.0, 417.0, 414.0, 416.0, 420.0, 429.0, 396.0, 379.0, 380.0, 343.0, 362.0, 368.0, 326.0, 335.0, 300.0, 315.0, 291.0, 331.0, 289.0, 298.0, 282.0, 280.0, 286.0, 253.0, 257.0, 256.0, 272.0, 236.0, 259.0, 217.0, 258.0, 226.0, 215.0, 231.0, 201.0, 217.0, 217.0, 185.0, 176.0, 199.0, 200.0, 197.0, 208.0, 193.0, 173.0, 175.0, 187.0, 147.0, 151.0, 183.0, 143.0, 169.0, 154.0, 184.0, 165.0, 147.0, 166.0, 166.0, 144.0, 166.0, 160.0, 162.0, 133.0, 158.0, 122.0, 141.0, 154.0, 153.0, 141.0, 152.0, 150.0, 134.0, 155.0, 175.0, 186.0, 150.0, 166.0, 142.0, 164.0, 156.0, 171.0, 172.0, 162.0, 129.0, 151.0, 148.0, 150.0, 169.0, 153.0, 136.0, 144.0, 162.0, 132.0, 158.0, 137.0, 141.0, 167.0, 140.0, 141.0, 161.0, 134.0, 133.0, 127.0, 124.0, 128.0, 125.0, 126.0, 129.0, 132.0, 124.0, 130.0, 122.0, 99.0, 88.0, 102.0, 114.0, 118.0, 97.0, 79.0, 95.0, 77.0, 76.0, 53.0, 66.0, 72.0, 60.0, 58.0, 53.0, 55.0, 59.0, 42.0, 61.0, 46.0, 55.0, 59.0, 48.0, 49.0, 36.0, 46.0, 51.0, 54.0, 38.0, 0.0]}

@yanliu-chn
Copy link

@nfahlgren : is the new extractor code somewhere online?

@max-zilla
Copy link
Contributor

@nfahlgren can you try:

  • changing in_bounds: true to "True" - python likes capitalized True/False
  • post to /metadata as opposed to /metadata.jsonld - we want to use jsonld metadata eventually but your JSON object there does not have a @context entry which is expected in a JSON-LD standard:
    http://json-ld.org/

If posting to /metadata works we're in pretty good shape - we'll need to identify some context links that can point to metadata definitions (if you don't have something like that already).

@nfahlgren
Copy link
Member

@max-zilla posting to metadata instead of metadata.jsonld did the trick. The in_bounds thing was converted to lowercase by the json.dumps function. It's working now though!

@dlebauer
Copy link
Member Author

dlebauer commented Jun 8, 2016

@nfahlgren and @max-zilla what is the status of this?

@max-zilla
Copy link
Contributor

@dlebauer @nfahlgren Noah, I'll look at your pull request before our meeting tomorrow.

@max-zilla
Copy link
Contributor

max-zilla commented Jun 9, 2016

@caicai89- @robkooper is "terra" the correct exchange to use for this extractor config? as opposed to "clowder"?

@caicai89- we can sit down and try to figure this out tomorrow if you have time. something that would be worth doing is installing a local test instance of Clowder and RabbitMQ to test this on a local environment: https://opensource.ncsa.illinois.edu/confluence/display/CATS/Installing+Clowder

  1. install MongoDB > in folder, ./bin/mongod
  2. install RabbitMQ > in folder, ./sbin/rabbitmq-server
  3. install Clowder > in folder, ./sbt run
  4. https://opensource.ncsa.illinois.edu/bitbucket/projects/CATS/repos/pyclowder/browse install PyClowder and try running wordcount

@robkooper
Copy link
Member

yes for plantcv terra is the right one to use. clowder is good for generic extractors.

@nfahlgren
Copy link
Member

The PlantCV analysis script was merged in #108. @gsrohde is working on inserting PlantCV traits into BETYdb in #33. The Clowder extractor that will run PlantCV is being developed in #119

@ghost ghost added plantCV and removed 2 - Working <= 5 labels Jan 3, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants