The Brown Dog Command Line Interface (BD-CLI) provides users with an easy to use interface to Brown Dog services. It talks to various components of Brown Dog through its API. It can be used to do operations like file conversions and extractions. Please see the README for current instructions.

Installation

You can install BD-CLI from the PyPi repository by following these steps:

  1. Create a Python virtual environment in your computer using virtualenv, virtualenvwrapper or any other tool.
  2. Activate the created Python virtual environment
  3. Run the following command: 

    pip install bdcli

  4. This will install bdcli and all the dependent packages and you should see a new application bd from your terminal.

Extractions

Extraction refers to the process of deriving additional useful information from the contents of one or more files/datasets that helps a user or application in determining what's in the file/dataset or collection of files/datasets. For example, using machine learning to find an object in an image.  For example:

Here we are using the development instance of Brown Dog by passing in the API URL using -b option.  This is an optional flag and by default BD-CLI uses the production API instance at https://bd-api.ncsa.illinois.edu.  The results of the extraction are by default placed ina JSON file, in this case ncsa.json:

examples $ cat ncsa.json | jq .
{
  "metadata.jsonld": [
    {
      "content": {
        "Human Preference Extractor": {
          "Definitions": {
            "Human Preference": "A Computer Vision model that uses the spectral data of an image to get a human preference value ranging from 1 to 5.",
            "Green Index": "The green index is the estimated percentage of green pixels within an image."
          },
          "Data": {
            "Green Index": "2.3"
          }
        }
      },
      "created_at": "Tue Jun 20 10:34:06 CDT 2017",
      "agent": {
        "extractor_id": "http://clowder.ncsa.illinois.edu/extractors/deprecatedapi",
        "@type": "cat:extractor",
        "name": "http://clowder.ncsa.illinois.edu/extractors/deprecatedapi"
      }
    },
    {
      "content": {
        "y1": 288,
        "y0": 88,
        "x0": 920,
        "x1": 1220
      },
      "@context": [
        "https://clowder.ncsa.illinois.edu/contexts/metadata.jsonld",
        {
          "y1": "http://clowder.ncsa.illinois.edu/gi_detector#y1",
          "y0": "http://clowder.ncsa.illinois.edu/gi_detector#y0",
          "x0": "http://clowder.ncsa.illinois.edu/gi_detector#x0",
          "x1": "http://clowder.ncsa.illinois.edu/gi_detector#x1"
        }
      ],
      "created_at": "Tue Jun 20 10:33:54 CDT 2017",
      "agent": {
        "extractor_id": "https://clowder.ncsa.illinois.edu/clowder/api/extractors/gi_detector",
        "@type": "cat:extractor",
        "name": "https://clowder.ncsa.illinois.edu/clowder/api/extractors/gi_detector"
      }
    },
    {
      "content": {
        "ocr_text": "WEB BROWSER MOSAIC THE FIRST POPULAR GRAPHICAL BROWSER FOR THE WORLD WIDE WEB WAS CREATED BY MARC ANDREESSEN AND ERIC BINA AT THE NATIONAL CENTER FOR COMPUTING APPLICATIONS NCSA UPON ITS 1993 RELEASE To THE PUBLIC MOSAIC GAVE INTERNET USERS EASY ACCESS TO MULTIMEDIA SOURCES OF INFORMATION WEB BROWSERS HAVE TRANSFORMED THE EXCHANGE OP INFORMATION UNIVERSITY OF ILLINOIS"
      },
      "@context": [
        "https://clowder.ncsa.illinois.edu/contexts/metadata.jsonld",
        {
          "ocr_text": "http://clowder.ncsa.illinois.edu/ncsa.image.ocr#ocr_text"
        }
      ],
      "created_at": "Tue Jun 20 10:33:50 CDT 2017",
      "agent": {
        "extractor_id": "https://clowder.ncsa.illinois.edu/clowder/api/extractors/ncsa.image.ocr",
        "@type": "cat:extractor",
        "name": "https://clowder.ncsa.illinois.edu/clowder/api/extractors/ncsa.image.ocr"
      }
    },
    {
      "content": {
        "basic_caltech101_score": "-0.696487",
        "basic_caltech101_category": "bonsai"
      },
      "@context": [
        "https://clowder.ncsa.illinois.edu/contexts/metadata.jsonld",
        {
          "basic_caltech101_score": "http://clowder.ncsa.illinois.edu/metadata/ncsa.cv.caltech101#basic_caltech101_score",
          "basic_caltech101_category": "http://clowder.ncsa.illinois.edu/metadata/ncsa.cv.caltech101#basic_caltech101_category"
        }
      ],
      "created_at": "Tue Jun 20 10:33:50 CDT 2017",
      "agent": {
        "extractor_id": "http://141.142.211.76:9000/clowder-dev/extractors/ncsa.cv.caltech101/1.0",
        "@type": "cat:extractor",
        "name": "http://141.142.211.76:9000/clowder-dev/extractors/ncsa.cv.caltech101/1.0"
      }
    },
    {
      "content": {
        "versus_descriptors": [
          {
            "descriptor_id": "class edu.illinois.ncsa.versus.descriptor.impl.RGBHistogramDescriptor",
            "bands": 3,
            "extractor_id": "edu.illinois.ncsa.versus.extract.impl.RGBHistogramExtractor",
            "bins": 8,
            "descriptor": [
              [
                0.5913427300480177,
                0.10906269800126721,
                0.29938380696545547,
                0.00021076498525954203,
                0,
                0,
                0,
                0
              ],
              [
                0.6151575370082368,
                0.18266582360672562,
                0.2015070350995701,
                0.000669604285467427,
                0,
                0,
                0,
                0
              ],
              [
                0.5999196213037582,
                0.1472782516717198,
                0.2524234700556629,
                0.0003786569688591462,
                0,
                0,
                0,
                0
              ]
            ]
          }
        ]
      },
      "@context": [
        "https://clowder.ncsa.illinois.edu/contexts/metadata.jsonld",
        {
          "descriptor_id": "http://clowder.ncsa.illinois.edu/ncsa.versus.image#descriptor_id",
          "versus_descriptors": "http://clowder.ncsa.illinois.edu/ncsa.versus.image#versus_descriptors",
          "bands": "http://clowder.ncsa.illinois.edu/ncsa.versus.image#bands",
          "descriptor": "http://clowder.ncsa.illinois.edu/ncsa.versus.image#descriptor",
          "extractor_id": "http://clowder.ncsa.illinois.edu/ncsa.versus.image#extractor_id",
          "bins": "http://clowder.ncsa.illinois.edu/ncsa.versus.image#bins"
        }
      ],
      "created_at": "Tue Jun 20 10:33:49 CDT 2017",
      "agent": {
        "extractor_id": "https://clowder.ncsa.illinois.edu/clowder/api/extractors/ncsa.versus.image",
        "@type": "cat:extractor",
        "name": "https://clowder.ncsa.illinois.edu/clowder/api/extractors/ncsa.versus.image"
      }
    },
    {
      "content": {
        "Border color": "srgb(223,223,223)",
        "Compression": "Zip",
        "Elapsed time": "0:01.219",
        "Artifacts": {
          "verbose": true,
          "filename": "/tmp/tmpzdHVT2.png"
        },
        "height": 1929,
        "Interlace": "None",
        "Compose": "Over",
        "Tainted": false,
        "Filesize": "3.797MB",
        "Pixels per second": "13.89MB",
        "Units": "PixelsPerCentimeter",
        "Chromaticity": {
          "red primary": "(0.64,0.33)",
          "green primary": "(0.3,0.6)",
          "blue primary": "(0.15,0.06)",
          "white point": "(0.3127,0.329)"
        },
        "Type": "TrueColor",
        "Rendering intent": "Perceptual",
        "Print size": "22.3539x27.2227",
        "Channel depth": {
          "blue": "8-bit",
          "green": "8-bit",
          "red": "8-bit"
        },
        "Background color": "white",
        "Transparent color": "black",
        "Format": "PNG (Portable Network Graphics)",
        "Image statistics": {
          "Overall": {
            "skewness": 0.67031,
            "min": "0 (0)",
            "max": "255 (1)",
            "standard deviation": "73.7679 (0.289286)",
            "kurtosis": -1.19763,
            "mean": "91.9025 (0.360402)"
          }
        },
        "Number pixels": "3.056M",
        "width": 1584,
        "Channel statistics": {
          "Blue": {
            "skewness": 0.771814,
            "min": "0 (0)",
            "max": "255 (1)",
            "standard deviation": "70.8725 (0.277931)",
            "kurtosis": -0.940633,
            "mean": "87.3909 (0.342709)"
          },
          "Green": {
            "skewness": 0.627148,
            "min": "0 (0)",
            "max": "255 (1)",
            "standard deviation": "73.9244 (0.2899)",
            "kurtosis": -1.27569,
            "mean": "90.7096 (0.355724)"
          },
          "Pixels": 3055536,
          "Red": {
            "skewness": 0.59793,
            "min": "0 (0)",
            "max": "255 (1)",
            "standard deviation": "76.4027 (0.299618)",
            "kurtosis": -1.38753,
            "mean": "97.607 (0.382772)"
          }
        },
        "Class": "DirectClass",
        "Mime type": "image/png",
        "Page geometry": "1584x1929+0+0",
        "Geometry": "1584x1929+0+0",
        "Colorspace": "sRGB",
        "Depth": "8-bit",
        "User time": "0.130u",
        "Matte color": "grey74",
        "Resolution": "70.86x70.86",
        "Gamma": 0.45455,
        "Image": "/tmp/tmpzdHVT2.png",
        "Properties": {
          "photoshop": {
            "DateCreated": "2014-01-13T09:13:13"
          },
          "exif": {
            "LightSource": 0,
            "FlashPixVersion": "48, 49, 48, 48",
            "ExposureMode": 0,
            "Flash": 16,
            "SceneCaptureType": 0,
            "DateTime": "2014:01:13 09:13:13",
            "MeteringMode": 5,
            "ExifVersion": "48, 50, 51, 48",
            "ExposureBiasValue": "0/1",
            "Saturation": 0,
            "ExposureProgram": 2,
            "FocalLengthIn35mmFilm": 33,
            "ColorSpace": 1,
            "ExifImageWidth": 1584,
            "Contrast": 0,
            "DateTimeOriginal": "2014:01:13 09:13:13",
            "WhiteBalance": 0,
            "CompressedBitsPerPixel": "4/1",
            "DateTimeDigitized": "2014:01:13 09:13:13",
            "SensingMethod": 2,
            "FNumber": "7/2",
            "CustomRendered": 0,
            "FocalLength": "28/5",
            "ComponentsConfiguration": "1, 2, 3, 0",
            "ExifOffset": 188,
            "ISOSpeedRatings": 100,
            "Model": "DMC-FZ200",
            "Software": "Ver.1.0",
            "ExposureTime": "1/125",
            "FileSource": 3,
            "MaxApertureValue": "95/32",
            "Make": "Panasonic",
            "Sharpness": 0,
            "GainControl": 0,
            "DigitalZoomRatio": "0/1",
            "ExifImageLength": 1929
          },
          "icc": {
            "model": "IEC 61966-2.1 Default RGB colour space - sRGB",
            "description": "sRGB IEC61966-2.1",
            "copyright": "Copyright (c) 1998 Hewlett-Packard Company",
            "manufacturer": "IEC http://www.iec.ch"
          },
          "signature": "2decf705da4c929f51db201f646f51f5dcd9dcfd42aac6997cf825e37593ca8d",
          "date": {
            "create": "2017-06-20T15:33:48+00:00",
            "modify": "2017-06-20T15:33:48+00:00"
          },
          "aux": {
            "SerialNumber": "O071309260157"
          },
          "xmp": {
            "CreateDate": "2014-01-13T09:13:13",
            "ModifyDate": "2014-01-13T09:13:13",
            "CreatorTool": "Ver.1.0"
          },
          "png": {
            "bKGD": "chunk was found (see Background color, above)",
            "IHDR": {
              "color-type-orig": 2,
              "color_type": "2 (Truecolor)",
              "bit_depth": 8,
              "width,height": "1584, 1929",
              "bit-depth-orig": 8,
              "interlace_method": "0 (Not interlaced)"
            },
            "pHYs": "x_res=7086, y_res=7086, units=1",
            "text": "47 tEXt/zTXt/iTXt chunks were found",
            "sRGB": "intent=0 (Perceptual Intent)",
            "gAMA": "gamma=0.45455 (See Gamma, above)",
            "tIME": "2017-05-08T17:53:53Z",
            "cHRM": "chunk was found (see Chromaticity, above)"
          }
        },
        "Version": "ImageMagick 6.8.9-9 Q16 x86_64 2017-05-26 http://www.imagemagick.org",
        "Iterations": 0
      },
      "@context": {
        "@vocab": "http://www.w3.org/2003/12/exif/ns"
      },
      "created_at": "Tue Jun 20 10:33:48 CDT 2017",
      "agent": {
        "extractor_id": "http://141.142.211.76:9000/clowder-dev/api/extractors/ncsa.image.metadata",
        "@type": "cat:extractor",
        "name": "http://141.142.211.76:9000/clowder-dev/api/extractors/ncsa.image.metadata"
      }
    },
    {
      "content": {
        "conformsTo": [
          {
            "sf:mime": "image/png",
            "sf:version": "1.1",
            "@id": "info:pronom/fmt/12",
            "sf:name": "Portable Network Graphics",
            "sf:basis": "extension match png; byte match at [[[0 16]] [[37 4]] [[3796773 12]]] (signature 3/3)"
          }
        ],
        "extent": 3796785
      },
      "@context": [
        "https://clowder.ncsa.illinois.edu/contexts/metadata.jsonld",
        {
          "conformsTo": "http://purl.org/dc/terms/conformsTo",
          "extent": "http://purl.org/dc/terms/extent"
        }
      ],
      "created_at": "Tue Jun 20 10:33:48 CDT 2017",
      "agent": {
        "extractor_id": "http://141.142.211.76:9000/clowder-dev/extractors/siegfried/2.0",
        "@type": "cat:extractor",
        "name": "http://141.142.211.76:9000/clowder-dev/extractors/siegfried/2.0"
      }
    },
    {
      "content": {
        "mean grayscale value": 92.37236772860801
      },
      "@context": [
        "https://clowder.ncsa.illinois.edu/contexts/metadata.jsonld",
        {
          "mean grayscale value": "http://clowder.ncsa.illinois.edu/ncsa.cv.meangrey#mean_grayscale_value"
        }
      ],
      "created_at": "Tue Jun 20 10:33:48 CDT 2017",
      "agent": {
        "extractor_id": "https://clowder.ncsa.illinois.edu/clowder/api/extractors/ncsa.cv.meangrey",
        "@type": "cat:extractor",
        "name": "https://clowder.ncsa.illinois.edu/clowder/api/extractors/ncsa.cv.meangrey"
      }
    },
    {
      "content": {
        "sha1": "cd89ff5f85078b3a98f4f92dc25894a69bd89181",
        "sha224": "9b9f30bede741663dcb7c3d1f1d9427a3b059d490831c3a6cd6b62ca",
        "sha384": "5ec428a0f040935aca0ff21fa72478864626ecd8ce326db12a7ede223464126a1a91ff5712192af8df9051ea7ab3ee4c",
        "sha256": "12adc20571b87d90350238f16a5fcaeaa9d5ea56cd3a4e57616d84b8d2799a32",
        "sha512": "c7dd3508b864904de193b105d4d2347ec591fa31d0b6ab54bcd3fa2c2ecef9967bb14a452d434d21fb5cfacc849d74c9e098648671e1ec1776599ebb0931b28e",
        "md5": "2a2d9dc555876abfd4641c4529eb7960"
      },
      "@context": [
        "https://clowder.ncsa.illinois.edu/contexts/metadata.jsonld",
        {
          "sha1": "http://www.w3.org/2001/04/xmldsig-more#sha1",
          "sha224": "http://www.w3.org/2001/04/xmldsig-more#sha224",
          "sha384": "http://www.w3.org/2001/04/xmldsig-more#sha384",
          "sha256": "http://www.w3.org/2001/04/xmldsig-more#sha256",
          "sha512": "http://www.w3.org/2001/04/xmldsig-more#sha512",
          "md5": "http://www.w3.org/2001/04/xmldsig-more#md5"
        }
      ],
      "created_at": "Tue Jun 20 10:33:48 CDT 2017",
      "agent": {
        "extractor_id": "http://141.142.211.76:9000/clowder-dev//api/extractors/ncsa.file.digest",
        "@type": "cat:extractor",
        "name": "http://141.142.211.76:9000/clowder-dev//api/extractors/ncsa.file.digest"
      }
    }
  ],
  "versusmetadata": [
    {
      "descriptor_id": "class edu.illinois.ncsa.versus.descriptor.impl.RGBHistogramDescriptor",
      "bands": 3,
      "extractor_id": "edu.illinois.ncsa.versus.extract.impl.RGBHistogramExtractor",
      "bins": 8,
      "descriptor": [
        [
          0.5913427300480177,
          0.10906269800126721,
          0.29938380696545547,
          0.00021076498525954203,
          0,
          0,
          0,
          0
        ],
        [
          0.6151575370082368,
          0.18266582360672562,
          0.2015070350995701,
          0.000669604285467427,
          0,
          0,
          0,
          0
        ],
        [
          0.5999196213037582,
          0.1472782516717198,
          0.2524234700556629,
          0.0003786569688591462,
          0,
          0,
          0,
          0
        ]
      ]
    }
  ],
  "tags": [],
  "filename": "ncsa.png",
  "technicalmetadata": [
    {
      "Human Preference Extractor": {
        "Definitions": {
          "Human Preference": "A Computer Vision model that uses the spectral data of an image to get a human preference value ranging from 1 to 5.",
          "Green Index": "The green index is the estimated percentage of green pixels within an image."
        },
        "Data": {
          "Green Index": "2.3"
        }
      }
    }
  ],
  "id": "5949405b4f0c4db82da2da84"
}

Optionally you can use the -v flag to get a more verbose output, including the content of the output file ncsa.json. You can also get a list of available extractors that will process a given input file:

Conversions

Conversions refer to the process of transforming files/datasets from one format to another. This is especially useful when you do not have a specific software required to open your input file. For example, the screenshot below shows a situation when software needed to open a PGM image file is not available: 

To get around this the file can be converted to another format for which required software is available (say JPEG).  With the Brown Dog DTS you can do this via a remote service without having to worry about have such utilities locally installed.  For example, using the conversion command below:

Now, you can open the file to view the converted file:


Similar to extraction, you can get a list of output formats to which a given input file can be converted:

This list will grow over time as new conversion capabilities get added to the DTS.

Pipelining Transformations

Using this feature you can combine two or more transformations in a single command. For example, converting a PGM file to PNG and then doing an extraction: 

which generates:

examples $ cat balloons.json | jq .
{
  "metadata.jsonld": [
    {
      "content": {
        "Human Preference Extractor": {
          "Definitions": {
            "Human Preference": "A Computer Vision model that uses the spectral data of an image to get a human preference value ranging from 1 to 5.",
            "Green Index": "The green index is the estimated percentage of green pixels within an image."
          },
          "Data": {
            "Green Index": "0.0"
          }
        }
      },
      "created_at": "Fri Jun 23 11:34:45 CDT 2017",
      "agent": {
        "extractor_id": "http://clowder.ncsa.illinois.edu/extractors/deprecatedapi",
        "@type": "cat:extractor",
        "name": "http://clowder.ncsa.illinois.edu/extractors/deprecatedapi"
      }
    },
    {
      "content": {
        "basic_caltech101_score": "-0.723433",
        "basic_caltech101_category": "Faces"
      },
      "@context": [
        "https://clowder.ncsa.illinois.edu/contexts/metadata.jsonld",
        {
          "basic_caltech101_score": "http://clowder.ncsa.illinois.edu/metadata/ncsa.cv.caltech101#basic_caltech101_score",
          "basic_caltech101_category": "http://clowder.ncsa.illinois.edu/metadata/ncsa.cv.caltech101#basic_caltech101_category"
        }
      ],
      "created_at": "Fri Jun 23 11:34:45 CDT 2017",
      "agent": {
        "extractor_id": "http://141.142.211.76:9000/clowder-dev/extractors/ncsa.cv.caltech101/1.0",
        "@type": "cat:extractor",
        "name": "http://141.142.211.76:9000/clowder-dev/extractors/ncsa.cv.caltech101/1.0"
      }
    },
    {
      "content": {
        "profiles": [
          {
            "y": "46",
            "x": "42",
            "width": "118",
            "section_id": "594d43254f0c4db82da51630",
            "height": "118"
          }
        ]
      },
      "@context": [
        "https://clowder.ncsa.illinois.edu/contexts/metadata.jsonld",
        {
          "profiles": "http://clowder.ncsa.illinois.edu/ncsa.cv.profiles#profiles"
        }
      ],
      "created_at": "Fri Jun 23 11:34:45 CDT 2017",
      "agent": {
        "extractor_id": "https://clowder.ncsa.illinois.edu/clowder/api/extractors/ncsa.cv.profiles",
        "@type": "cat:extractor",
        "name": "https://clowder.ncsa.illinois.edu/clowder/api/extractors/ncsa.cv.profiles"
      }
    },
    {
      "content": {
        "Border color": "gray(223)",
        "Compression": "Zip",
        "Elapsed time": "0:01.040",
        "Artifacts": {
          "verbose": true,
          "filename": "/tmp/tmppZUN2Y.png"
        },
        "height": 480,
        "Interlace": "None",
        "Compose": "Over",
        "Tainted": false,
        "Filesize": "169KB",
        "Pixels per second": "7.68MB",
        "Number pixels": "307K",
        "Type": "Grayscale",
        "Channel depth": {
          "gray": "8-bit"
        },
        "Background color": "gray(255)",
        "Transparent color": "gray(0)",
        "Colormap": {
          "216": "(216,216,216) #D8D8D8 gray(216)",
          "217": "(217,217,217) #D9D9D9 gray(217)",
          "214": "(214,214,214) #D6D6D6 gray(214)",
          "215": "(215,215,215) #D7D7D7 gray(215)",
          "212": "(212,212,212) #D4D4D4 gray(212)",
          "213": "(213,213,213) #D5D5D5 gray(213)",
          "210": "(210,210,210) #D2D2D2 gray(210)",
          "211": "(211,211,211) #D3D3D3 gray(211)",
          "165": "(165,165,165) #A5A5A5 gray(165)",
          "218": "(218,218,218) #DADADA gray(218)",
          "219": "(219,219,219) #DBDBDB gray(219)",
          "133": "(133,133,133) #858585 gray(133)",
          "132": "(132,132,132) #848484 gray(132)",
          "131": "(131,131,131) #838383 gray(131)",
          "130": "(130,130,130) #828282 gray(130)",
          "137": "(137,137,137) #898989 gray(137)",
          "136": "(136,136,136) #888888 gray(136)",
          "135": "(135,135,135) #878787 gray(135)",
          "134": "(134,134,134) #868686 gray(134)",
          "139": "(139,139,139) #8B8B8B gray(139)",
          "138": "(138,138,138) #8A8A8A gray(138)",
          "225": "(225,225,225) #E1E1E1 gray(225)",
          "24": "( 24, 24, 24) #181818 gray(24)",
          "25": "( 25, 25, 25) #191919 gray(25)",
          "26": "( 26, 26, 26) #1A1A1A gray(26)",
          "27": "( 27, 27, 27) #1B1B1B gray(27)",
          "20": "( 20, 20, 20) #141414 gray(20)",
          "21": "( 21, 21, 21) #151515 gray(21)",
          "22": "( 22, 22, 22) #161616 gray(22)",
          "23": "( 23, 23, 23) #171717 gray(23)",
          "95": "( 95, 95, 95) #5F5F5F gray(95)",
          "28": "( 28, 28, 28) #1C1C1C gray(28)",
          "29": "( 29, 29, 29) #1D1D1D gray(29)",
          "94": "( 94, 94, 94) #5E5E5E gray(94)",
          "0": "(  0,  0,  0) #000000 gray(0)",
          "4": "(  4,  4,  4) #040404 gray(4)",
          "161": "(161,161,161) #A1A1A1 gray(161)",
          "8": "(  8,  8,  8) #080808 gray(8)",
          "163": "(163,163,163) #A3A3A3 gray(163)",
          "120": "(120,120,120) #787878 gray(120)",
          "121": "(121,121,121) #797979 gray(121)",
          "122": "(122,122,122) #7A7A7A gray(122)",
          "123": "(123,123,123) #7B7B7B gray(123)",
          "124": "(124,124,124) #7C7C7C gray(124)",
          "125": "(125,125,125) #7D7D7D gray(125)",
          "126": "(126,126,126) #7E7E7E gray(126)",
          "127": "(127,127,127) #7F7F7F gray(127)",
          "128": "(128,128,128) #808080 gray(128)",
          "129": "(129,129,129) #818181 gray(129)",
          "167": "(167,167,167) #A7A7A7 gray(167)",
          "91": "( 91, 91, 91) #5B5B5B gray(91)",
          "59": "( 59, 59, 59) #3B3B3B gray(59)",
          "58": "( 58, 58, 58) #3A3A3A gray(58)",
          "55": "( 55, 55, 55) #373737 gray(55)",
          "54": "( 54, 54, 54) #363636 gray(54)",
          "57": "( 57, 57, 57) #393939 gray(57)",
          "56": "( 56, 56, 56) #383838 gray(56)",
          "51": "( 51, 51, 51) #333333 gray(51)",
          "50": "( 50, 50, 50) #323232 gray(50)",
          "53": "( 53, 53, 53) #353535 gray(53)",
          "52": "( 52, 52, 52) #343434 gray(52)",
          "164": "(164,164,164) #A4A4A4 gray(164)",
          "201": "(201,201,201) #C9C9C9 gray(201)",
          "199": "(199,199,199) #C7C7C7 gray(199)",
          "198": "(198,198,198) #C6C6C6 gray(198)",
          "200": "(200,200,200) #C8C8C8 gray(200)",
          "195": "(195,195,195) #C3C3C3 gray(195)",
          "194": "(194,194,194) #C2C2C2 gray(194)",
          "197": "(197,197,197) #C5C5C5 gray(197)",
          "178": "(178,178,178) #B2B2B2 gray(178)",
          "191": "(191,191,191) #BFBFBF gray(191)",
          "190": "(190,190,190) #BEBEBE gray(190)",
          "193": "(193,193,193) #C1C1C1 gray(193)",
          "192": "(192,192,192) #C0C0C0 gray(192)",
          "115": "(115,115,115) #737373 gray(115)",
          "114": "(114,114,114) #727272 gray(114)",
          "88": "( 88, 88, 88) #585858 gray(88)",
          "89": "( 89, 89, 89) #595959 gray(89)",
          "111": "(111,111,111) #6F6F6F gray(111)",
          "110": "(110,110,110) #6E6E6E gray(110)",
          "113": "(113,113,113) #717171 gray(113)",
          "112": "(112,112,112) #707070 gray(112)",
          "82": "( 82, 82, 82) #525252 gray(82)",
          "83": "( 83, 83, 83) #535353 gray(83)",
          "80": "( 80, 80, 80) #505050 gray(80)",
          "81": "( 81, 81, 81) #515151 gray(81)",
          "119": "(119,119,119) #777777 gray(119)",
          "118": "(118,118,118) #767676 gray(118)",
          "84": "( 84, 84, 84) #545454 gray(84)",
          "85": "( 85, 85, 85) #555555 gray(85)",
          "251": "(251,251,251) #FBFBFB gray(251)",
          "207": "(207,207,207) #CFCFCF gray(207)",
          "206": "(206,206,206) #CECECE gray(206)",
          "226": "(226,226,226) #E2E2E2 gray(226)",
          "172": "(172,172,172) #ACACAC gray(172)",
          "3": "(  3,  3,  3) #030303 gray(3)",
          "254": "(254,254,254) #FEFEFE gray(254)",
          "7": "(  7,  7,  7) #070707 gray(7)",
          "255": "(255,255,255) #FFFFFF gray(255)",
          "166": "(166,166,166) #A6A6A6 gray(166)",
          "245": "(245,245,245) #F5F5F5 gray(245)",
          "244": "(244,244,244) #F4F4F4 gray(244)",
          "247": "(247,247,247) #F7F7F7 gray(247)",
          "109": "(109,109,109) #6D6D6D gray(109)",
          "241": "(241,241,241) #F1F1F1 gray(241)",
          "240": "(240,240,240) #F0F0F0 gray(240)",
          "243": "(243,243,243) #F3F3F3 gray(243)",
          "242": "(242,242,242) #F2F2F2 gray(242)",
          "102": "(102,102,102) #666666 gray(102)",
          "103": "(103,103,103) #676767 gray(103)",
          "100": "(100,100,100) #646464 gray(100)",
          "101": "(101,101,101) #656565 gray(101)",
          "106": "(106,106,106) #6A6A6A gray(106)",
          "107": "(107,107,107) #6B6B6B gray(107)",
          "104": "(104,104,104) #686868 gray(104)",
          "105": "(105,105,105) #696969 gray(105)",
          "39": "( 39, 39, 39) #272727 gray(39)",
          "38": "( 38, 38, 38) #262626 gray(38)",
          "33": "( 33, 33, 33) #212121 gray(33)",
          "32": "( 32, 32, 32) #202020 gray(32)",
          "31": "( 31, 31, 31) #1F1F1F gray(31)",
          "30": "( 30, 30, 30) #1E1E1E gray(30)",
          "37": "( 37, 37, 37) #252525 gray(37)",
          "108": "(108,108,108) #6C6C6C gray(108)",
          "35": "( 35, 35, 35) #232323 gray(35)",
          "34": "( 34, 34, 34) #222222 gray(34)",
          "246": "(246,246,246) #F6F6F6 gray(246)",
          "162": "(162,162,162) #A2A2A2 gray(162)",
          "160": "(160,160,160) #A0A0A0 gray(160)",
          "252": "(252,252,252) #FCFCFC gray(252)",
          "176": "(176,176,176) #B0B0B0 gray(176)",
          "60": "( 60, 60, 60) #3C3C3C gray(60)",
          "61": "( 61, 61, 61) #3D3D3D gray(61)",
          "62": "( 62, 62, 62) #3E3E3E gray(62)",
          "63": "( 63, 63, 63) #3F3F3F gray(63)",
          "64": "( 64, 64, 64) #404040 gray(64)",
          "65": "( 65, 65, 65) #414141 gray(65)",
          "179": "(179,179,179) #B3B3B3 gray(179)",
          "67": "( 67, 67, 67) #434343 gray(67)",
          "68": "( 68, 68, 68) #444444 gray(68)",
          "69": "( 69, 69, 69) #454545 gray(69)",
          "175": "(175,175,175) #AFAFAF gray(175)",
          "174": "(174,174,174) #AEAEAE gray(174)",
          "173": "(173,173,173) #ADADAD gray(173)",
          "177": "(177,177,177) #B1B1B1 gray(177)",
          "171": "(171,171,171) #ABABAB gray(171)",
          "170": "(170,170,170) #AAAAAA gray(170)",
          "249": "(249,249,249) #F9F9F9 gray(249)",
          "253": "(253,253,253) #FDFDFD gray(253)",
          "248": "(248,248,248) #F8F8F8 gray(248)",
          "182": "(182,182,182) #B6B6B6 gray(182)",
          "183": "(183,183,183) #B7B7B7 gray(183)",
          "180": "(180,180,180) #B4B4B4 gray(180)",
          "181": "(181,181,181) #B5B5B5 gray(181)",
          "186": "(186,186,186) #BABABA gray(186)",
          "187": "(187,187,187) #BBBBBB gray(187)",
          "184": "(184,184,184) #B8B8B8 gray(184)",
          "6": "(  6,  6,  6) #060606 gray(6)",
          "188": "(188,188,188) #BCBCBC gray(188)",
          "189": "(189,189,189) #BDBDBD gray(189)",
          "202": "(202,202,202) #CACACA gray(202)",
          "196": "(196,196,196) #C4C4C4 gray(196)",
          "97": "( 97, 97, 97) #616161 gray(97)",
          "185": "(185,185,185) #B9B9B9 gray(185)",
          "99": "( 99, 99, 99) #636363 gray(99)",
          "98": "( 98, 98, 98) #626262 gray(98)",
          "168": "(168,168,168) #A8A8A8 gray(168)",
          "169": "(169,169,169) #A9A9A9 gray(169)",
          "229": "(229,229,229) #E5E5E5 gray(229)",
          "228": "(228,228,228) #E4E4E4 gray(228)",
          "227": "(227,227,227) #E3E3E3 gray(227)",
          "90": "( 90, 90, 90) #5A5A5A gray(90)",
          "93": "( 93, 93, 93) #5D5D5D gray(93)",
          "92": "( 92, 92, 92) #5C5C5C gray(92)",
          "223": "(223,223,223) #DFDFDF gray(223)",
          "222": "(222,222,222) #DEDEDE gray(222)",
          "221": "(221,221,221) #DDDDDD gray(221)",
          "220": "(220,220,220) #DCDCDC gray(220)",
          "11": "( 11, 11, 11) #0B0B0B gray(11)",
          "10": "( 10, 10, 10) #0A0A0A gray(10)",
          "13": "( 13, 13, 13) #0D0D0D gray(13)",
          "12": "( 12, 12, 12) #0C0C0C gray(12)",
          "15": "( 15, 15, 15) #0F0F0F gray(15)",
          "14": "( 14, 14, 14) #0E0E0E gray(14)",
          "66": "( 66, 66, 66) #424242 gray(66)",
          "16": "( 16, 16, 16) #101010 gray(16)",
          "19": "( 19, 19, 19) #131313 gray(19)",
          "18": "( 18, 18, 18) #121212 gray(18)",
          "117": "(117,117,117) #757575 gray(117)",
          "116": "(116,116,116) #747474 gray(116)",
          "204": "(204,204,204) #CCCCCC gray(204)",
          "17": "( 17, 17, 17) #111111 gray(17)",
          "151": "(151,151,151) #979797 gray(151)",
          "150": "(150,150,150) #969696 gray(150)",
          "153": "(153,153,153) #999999 gray(153)",
          "152": "(152,152,152) #989898 gray(152)",
          "155": "(155,155,155) #9B9B9B gray(155)",
          "250": "(250,250,250) #FAFAFA gray(250)",
          "157": "(157,157,157) #9D9D9D gray(157)",
          "156": "(156,156,156) #9C9C9C gray(156)",
          "159": "(159,159,159) #9F9F9F gray(159)",
          "158": "(158,158,158) #9E9E9E gray(158)",
          "36": "( 36, 36, 36) #242424 gray(36)",
          "238": "(238,238,238) #EEEEEE gray(238)",
          "239": "(239,239,239) #EFEFEF gray(239)",
          "234": "(234,234,234) #EAEAEA gray(234)",
          "235": "(235,235,235) #EBEBEB gray(235)",
          "236": "(236,236,236) #ECECEC gray(236)",
          "237": "(237,237,237) #EDEDED gray(237)",
          "230": "(230,230,230) #E6E6E6 gray(230)",
          "231": "(231,231,231) #E7E7E7 gray(231)",
          "232": "(232,232,232) #E8E8E8 gray(232)",
          "233": "(233,233,233) #E9E9E9 gray(233)",
          "224": "(224,224,224) #E0E0E0 gray(224)",
          "48": "( 48, 48, 48) #303030 gray(48)",
          "49": "( 49, 49, 49) #313131 gray(49)",
          "46": "( 46, 46, 46) #2E2E2E gray(46)",
          "86": "( 86, 86, 86) #565656 gray(86)",
          "44": "( 44, 44, 44) #2C2C2C gray(44)",
          "45": "( 45, 45, 45) #2D2D2D gray(45)",
          "42": "( 42, 42, 42) #2A2A2A gray(42)",
          "43": "( 43, 43, 43) #2B2B2B gray(43)",
          "40": "( 40, 40, 40) #282828 gray(40)",
          "87": "( 87, 87, 87) #575757 gray(87)",
          "1": "(  1,  1,  1) #010101 gray(1)",
          "5": "(  5,  5,  5) #050505 gray(5)",
          "9": "(  9,  9,  9) #090909 gray(9)",
          "78": "( 78, 78, 78) #4E4E4E gray(78)",
          "146": "(146,146,146) #929292 gray(146)",
          "147": "(147,147,147) #939393 gray(147)",
          "203": "(203,203,203) #CBCBCB gray(203)",
          "145": "(145,145,145) #919191 gray(145)",
          "142": "(142,142,142) #8E8E8E gray(142)",
          "143": "(143,143,143) #8F8F8F gray(143)",
          "140": "(140,140,140) #8C8C8C gray(140)",
          "141": "(141,141,141) #8D8D8D gray(141)",
          "209": "(209,209,209) #D1D1D1 gray(209)",
          "208": "(208,208,208) #D0D0D0 gray(208)",
          "148": "(148,148,148) #949494 gray(148)",
          "149": "(149,149,149) #959595 gray(149)",
          "77": "( 77, 77, 77) #4D4D4D gray(77)",
          "76": "( 76, 76, 76) #4C4C4C gray(76)",
          "75": "( 75, 75, 75) #4B4B4B gray(75)",
          "74": "( 74, 74, 74) #4A4A4A gray(74)",
          "73": "( 73, 73, 73) #494949 gray(73)",
          "72": "( 72, 72, 72) #484848 gray(72)",
          "71": "( 71, 71, 71) #474747 gray(71)",
          "70": "( 70, 70, 70) #464646 gray(70)",
          "154": "(154,154,154) #9A9A9A gray(154)",
          "96": "( 96, 96, 96) #606060 gray(96)",
          "79": "( 79, 79, 79) #4F4F4F gray(79)",
          "205": "(205,205,205) #CDCDCD gray(205)",
          "2": "(  2,  2,  2) #020202 gray(2)",
          "144": "(144,144,144) #909090 gray(144)",
          "41": "( 41, 41, 41) #292929 gray(41)",
          "47": "( 47, 47, 47) #2F2F2F gray(47)"
        },
        "Format": "PNG (Portable Network Graphics)",
        "Histogram": {
          "(243,243,243) #F3F3F3 gray(243)": 290,
          "(176,176,176) #B0B0B0 gray(176)": 1458,
          "(188,188,188) #BCBCBC gray(188)": 1561,
          "(135,135,135) #878787 gray(135)": 2940,
          "(172,172,172) #ACACAC gray(172)": 1666,
          "(124,124,124) #7C7C7C gray(124)": 2190,
          "(169,169,169) #A9A9A9 gray(169)": 1536,
          "(115,115,115) #737373 gray(115)": 1997,
          "(179,179,179) #B3B3B3 gray(179)": 1466,
          "(207,207,207) #CFCFCF gray(207)": 2216,
          "(226,226,226) #E2E2E2 gray(226)": 306,
          "(231,231,231) #E7E7E7 gray(231)": 378,
          "( 91, 91, 91) #5B5B5B gray(91)": 1096,
          "(227,227,227) #E3E3E3 gray(227)": 594,
          "(186,186,186) #BABABA gray(186)": 1758,
          "(141,141,141) #8D8D8D gray(141)": 3947,
          "(173,173,173) #ADADAD gray(173)": 1536,
          "(117,117,117) #757575 gray(117)": 1943,
          "(109,109,109) #6D6D6D gray(109)": 1768,
          "(178,178,178) #B2B2B2 gray(178)": 1319,
          "(213,213,213) #D5D5D5 gray(213)": 757,
          "(126,126,126) #7E7E7E gray(126)": 1981,
          "(158,158,158) #9E9E9E gray(158)": 2263,
          "(130,130,130) #828282 gray(130)": 2288,
          "(129,129,129) #818181 gray(129)": 2166,
          "(151,151,151) #979797 gray(151)": 3686,
          "(157,157,157) #9D9D9D gray(157)": 2452,
          "(138,138,138) #8A8A8A gray(138)": 3188,
          "(212,212,212) #D4D4D4 gray(212)": 1613,
          "(198,198,198) #C6C6C6 gray(198)": 3105,
          "(195,195,195) #C3C3C3 gray(195)": 2888,
          "(187,187,187) #BBBBBB gray(187)": 1614,
          "(125,125,125) #7D7D7D gray(125)": 2025,
          "( 81, 81, 81) #515151 gray(81)": 178,
          "(162,162,162) #A2A2A2 gray(162)": 1723,
          "(183,183,183) #B7B7B7 gray(183)": 1862,
          "(223,223,223) #DFDFDF gray(223)": 353,
          "(149,149,149) #959595 gray(149)": 4307,
          "(152,152,152) #989898 gray(152)": 3669,
          "(238,238,238) #EEEEEE gray(238)": 257,
          "(230,230,230) #E6E6E6 gray(230)": 218,
          "(208,208,208) #D0D0D0 gray(208)": 1025,
          "(134,134,134) #868686 gray(134)": 2667,
          "(163,163,163) #A3A3A3 gray(163)": 1804,
          "(110,110,110) #6E6E6E gray(110)": 1656,
          "(142,142,142) #8E8E8E gray(142)": 4097,
          "(241,241,241) #F1F1F1 gray(241)": 233,
          "(167,167,167) #A7A7A7 gray(167)": 1640,
          "(180,180,180) #B4B4B4 gray(180)": 1620,
          "( 98, 98, 98) #626262 gray(98)": 1603,
          "(214,214,214) #D6D6D6 gray(214)": 1068,
          "(194,194,194) #C2C2C2 gray(194)": 2174,
          "(242,242,242) #F2F2F2 gray(242)": 413,
          "(236,236,236) #ECECEC gray(236)": 300,
          "(190,190,190) #BEBEBE gray(190)": 1526,
          "(100,100,100) #646464 gray(100)": 1720,
          "(196,196,196) #C4C4C4 gray(196)": 3935,
          "( 93, 93, 93) #5D5D5D gray(93)": 1598,
          "(210,210,210) #D2D2D2 gray(210)": 1129,
          "(199,199,199) #C7C7C7 gray(199)": 4057,
          "(159,159,159) #9F9F9F gray(159)": 2105,
          "(122,122,122) #7A7A7A gray(122)": 2262,
          "(114,114,114) #727272 gray(114)": 1952,
          "(156,156,156) #9C9C9C gray(156)": 2483,
          "( 88, 88, 88) #585858 gray(88)": 729,
          "(206,206,206) #CECECE gray(206)": 1266,
          "(153,153,153) #999999 gray(153)": 3283,
          "(147,147,147) #939393 gray(147)": 3793,
          "(209,209,209) #D1D1D1 gray(209)": 1036,
          "(191,191,191) #BFBFBF gray(191)": 1501,
          "(244,244,244) #F4F4F4 gray(244)": 557,
          "(120,120,120) #787878 gray(120)": 2056,
          "(202,202,202) #CACACA gray(202)": 1423,
          "(204,204,204) #CCCCCC gray(204)": 1246,
          "(224,224,224) #E0E0E0 gray(224)": 356,
          "(177,177,177) #B1B1B1 gray(177)": 1456,
          "(123,123,123) #7B7B7B gray(123)": 2141,
          "(104,104,104) #686868 gray(104)": 1858,
          "(148,148,148) #949494 gray(148)": 4006,
          "( 92, 92, 92) #5C5C5C gray(92)": 1281,
          "(181,181,181) #B5B5B5 gray(181)": 3326,
          "( 80, 80, 80) #505050 gray(80)": 46,
          "(170,170,170) #AAAAAA gray(170)": 1661,
          "(128,128,128) #808080 gray(128)": 2230,
          "(155,155,155) #9B9B9B gray(155)": 2624,
          "(221,221,221) #DDDDDD gray(221)": 454,
          "(184,184,184) #B8B8B8 gray(184)": 1762,
          "(101,101,101) #656565 gray(101)": 1564,
          "(225,225,225) #E1E1E1 gray(225)": 673,
          "(112,112,112) #707070 gray(112)": 1868,
          "(189,189,189) #BDBDBD gray(189)": 1473,
          "( 82, 82, 82) #525252 gray(82)": 238,
          "(235,235,235) #EBEBEB gray(235)": 347,
          "( 86, 86, 86) #565656 gray(86)": 773,
          "( 85, 85, 85) #555555 gray(85)": 665,
          "(200,200,200) #C8C8C8 gray(200)": 1576,
          "(215,215,215) #D7D7D7 gray(215)": 1115,
          "(229,229,229) #E5E5E5 gray(229)": 480,
          "(103,103,103) #676767 gray(103)": 1828,
          "( 96, 96, 96) #606060 gray(96)": 1666,
          "(219,219,219) #DBDBDB gray(219)": 554,
          "(146,146,146) #929292 gray(146)": 4005,
          "(193,193,193) #C1C1C1 gray(193)": 1968,
          "(205,205,205) #CDCDCD gray(205)": 1221,
          "(245,245,245) #F5F5F5 gray(245)": 432,
          "(137,137,137) #898989 gray(137)": 3027,
          "(248,248,248) #F8F8F8 gray(248)": 17452,
          "(182,182,182) #B6B6B6 gray(182)": 1696,
          "(234,234,234) #EAEAEA gray(234)": 346,
          "(132,132,132) #848484 gray(132)": 2408,
          "(197,197,197) #C5C5C5 gray(197)": 4133,
          "( 87, 87, 87) #575757 gray(87)": 722,
          "(161,161,161) #A1A1A1 gray(161)": 1817,
          "(140,140,140) #8C8C8C gray(140)": 3712,
          "(240,240,240) #F0F0F0 gray(240)": 377,
          "(222,222,222) #DEDEDE gray(222)": 861,
          "(106,106,106) #6A6A6A gray(106)": 1935,
          "(218,218,218) #DADADA gray(218)": 592,
          "(107,107,107) #6B6B6B gray(107)": 1817,
          "(144,144,144) #909090 gray(144)": 3991,
          "(165,165,165) #A5A5A5 gray(165)": 1911,
          "(239,239,239) #EFEFEF gray(239)": 221,
          "( 90, 90, 90) #5A5A5A gray(90)": 932,
          "(113,113,113) #717171 gray(113)": 2024,
          "(118,118,118) #767676 gray(118)": 1974,
          "(217,217,217) #D9D9D9 gray(217)": 562,
          "(211,211,211) #D3D3D3 gray(211)": 1011,
          "(174,174,174) #AEAEAE gray(174)": 1524,
          "(164,164,164) #A4A4A4 gray(164)": 1877,
          "( 99, 99, 99) #636363 gray(99)": 1594,
          "(201,201,201) #C9C9C9 gray(201)": 1524,
          "(133,133,133) #858585 gray(133)": 2674,
          "(233,233,233) #E9E9E9 gray(233)": 156,
          "(119,119,119) #777777 gray(119)": 1956,
          "( 97, 97, 97) #616161 gray(97)": 1551,
          "(102,102,102) #666666 gray(102)": 1504,
          "(185,185,185) #B9B9B9 gray(185)": 1750,
          "(203,203,203) #CBCBCB gray(203)": 1234,
          "(116,116,116) #747474 gray(116)": 1938,
          "(136,136,136) #888888 gray(136)": 2959,
          "(175,175,175) #AFAFAF gray(175)": 1520,
          "(127,127,127) #7F7F7F gray(127)": 2034,
          "(220,220,220) #DCDCDC gray(220)": 1128,
          "(145,145,145) #919191 gray(145)": 3854,
          "(150,150,150) #969696 gray(150)": 4101,
          "(246,246,246) #F6F6F6 gray(246)": 784,
          "(121,121,121) #797979 gray(121)": 2239,
          "(237,237,237) #EDEDED gray(237)": 258,
          "(160,160,160) #A0A0A0 gray(160)": 1881,
          "( 95, 95, 95) #5F5F5F gray(95)": 1923,
          "(228,228,228) #E4E4E4 gray(228)": 242,
          "(247,247,247) #F7F7F7 gray(247)": 3008,
          "(171,171,171) #ABABAB gray(171)": 1639,
          "( 83, 83, 83) #535353 gray(83)": 381,
          "(105,105,105) #696969 gray(105)": 2035,
          "(143,143,143) #8F8F8F gray(143)": 4002,
          "(154,154,154) #9A9A9A gray(154)": 2770,
          "(232,232,232) #E8E8E8 gray(232)": 323,
          "(166,166,166) #A6A6A6 gray(166)": 1709,
          "(111,111,111) #6F6F6F gray(111)": 1770,
          "(139,139,139) #8B8B8B gray(139)": 3412,
          "(216,216,216) #D8D8D8 gray(216)": 1381,
          "( 89, 89, 89) #595959 gray(89)": 807,
          "( 84, 84, 84) #545454 gray(84)": 503,
          "(108,108,108) #6C6C6C gray(108)": 1665,
          "(131,131,131) #838383 gray(131)": 2190,
          "( 94, 94, 94) #5E5E5E gray(94)": 1976,
          "(192,192,192) #C0C0C0 gray(192)": 1741
        },
        "width": 640,
        "Channel statistics": {
          "Gray": {
            "skewness": 0.413264,
            "min": "80 (0.313725)",
            "max": "248 (0.972549)",
            "standard deviation": "42.8404 (0.168002)",
            "kurtosis": -0.610308,
            "mean": "159.916 (0.627121)"
          },
          "Pixels": 307200
        },
        "Class": "PseudoClass",
        "Mime type": "image/png",
        "Page geometry": "640x480+0+0",
        "Geometry": "640x480+0+0",
        "Colorspace": "Gray",
        "Colormap entries": 256,
        "Depth": "8-bit",
        "User time": "0.010u",
        "Matte color": "gray(189)",
        "Gamma": 0.45455,
        "Image": "/tmp/tmppZUN2Y.png",
        "Properties": {
          "comment": "created by 'xv balloons_bw.tif'",
          "date": {
            "create": "2017-06-23T16:34:43+00:00",
            "modify": "2017-06-23T16:34:43+00:00"
          },
          "png": {
            "bKGD": "chunk was found (see Background color, above)",
            "IHDR": {
              "color-type-orig": 0,
              "color_type": "0 (Grayscale)",
              "bit_depth": 8,
              "width,height": "640, 480",
              "bit-depth-orig": 8,
              "interlace_method": "0 (Not interlaced)"
            },
            "text": "3 tEXt/zTXt/iTXt chunks were found",
            "gAMA": "gamma=0.45455 (See Gamma, above)",
            "tIME": "2017-06-23T16:34:42Z"
          },
          "signature": "2bd68a4db6eb3a9887414ccdeffb742e315d6a7dd5a5b72eb62d4c9bfef3c98f"
        },
        "Colors": 168,
        "Version": "ImageMagick 6.8.9-9 Q16 x86_64 2017-05-26 http://www.imagemagick.org",
        "Iterations": 0
      },
      "@context": {
        "@vocab": "http://www.w3.org/2003/12/exif/ns"
      },
      "created_at": "Fri Jun 23 11:34:44 CDT 2017",
      "agent": {
        "extractor_id": "http://141.142.211.76:9000/clowder-dev/api/extractors/ncsa.image.metadata",
        "@type": "cat:extractor",
        "name": "http://141.142.211.76:9000/clowder-dev/api/extractors/ncsa.image.metadata"
      }
    },
    {
      "content": {
        "y1": 433,
        "y0": 166,
        "x0": 192,
        "x1": 594
      },
      "@context": [
        "https://clowder.ncsa.illinois.edu/contexts/metadata.jsonld",
        {
          "y1": "http://clowder.ncsa.illinois.edu/gi_detector#y1",
          "y0": "http://clowder.ncsa.illinois.edu/gi_detector#y0",
          "x0": "http://clowder.ncsa.illinois.edu/gi_detector#x0",
          "x1": "http://clowder.ncsa.illinois.edu/gi_detector#x1"
        }
      ],
      "created_at": "Fri Jun 23 11:34:44 CDT 2017",
      "agent": {
        "extractor_id": "https://clowder.ncsa.illinois.edu/clowder/api/extractors/gi_detector",
        "@type": "cat:extractor",
        "name": "https://clowder.ncsa.illinois.edu/clowder/api/extractors/gi_detector"
      }
    },
    {
      "content": {
        "ocr_text": "No text detected"
      },
      "@context": [
        "https://clowder.ncsa.illinois.edu/contexts/metadata.jsonld",
        {
          "ocr_text": "http://clowder.ncsa.illinois.edu/ncsa.image.ocr#ocr_text"
        }
      ],
      "created_at": "Fri Jun 23 11:34:44 CDT 2017",
      "agent": {
        "extractor_id": "https://clowder.ncsa.illinois.edu/clowder/api/extractors/ncsa.image.ocr",
        "@type": "cat:extractor",
        "name": "https://clowder.ncsa.illinois.edu/clowder/api/extractors/ncsa.image.ocr"
      }
    },
    {
      "content": {
        "conformsTo": [
          {
            "sf:mime": "image/png",
            "sf:version": "1.0",
            "@id": "info:pronom/fmt/11",
            "sf:name": "Portable Network Graphics",
            "sf:basis": "extension match png; byte match at [[[0 16]] [[169329 12]]]"
          }
        ],
        "extent": 169341
      },
      "@context": [
        "https://clowder.ncsa.illinois.edu/contexts/metadata.jsonld",
        {
          "conformsTo": "http://purl.org/dc/terms/conformsTo",
          "extent": "http://purl.org/dc/terms/extent"
        }
      ],
      "created_at": "Fri Jun 23 11:34:44 CDT 2017",
      "agent": {
        "extractor_id": "http://141.142.211.76:9000/clowder-dev/extractors/siegfried/2.0",
        "@type": "cat:extractor",
        "name": "http://141.142.211.76:9000/clowder-dev/extractors/siegfried/2.0"
      }
    },
    {
      "content": {
        "versus_descriptors": []
      },
      "@context": [
        "https://clowder.ncsa.illinois.edu/contexts/metadata.jsonld",
        {
          "descriptor_id": "http://clowder.ncsa.illinois.edu/ncsa.versus.image#descriptor_id",
          "versus_descriptors": "http://clowder.ncsa.illinois.edu/ncsa.versus.image#versus_descriptors",
          "bands": "http://clowder.ncsa.illinois.edu/ncsa.versus.image#bands",
          "descriptor": "http://clowder.ncsa.illinois.edu/ncsa.versus.image#descriptor",
          "extractor_id": "http://clowder.ncsa.illinois.edu/ncsa.versus.image#extractor_id",
          "bins": "http://clowder.ncsa.illinois.edu/ncsa.versus.image#bins"
        }
      ],
      "created_at": "Fri Jun 23 11:34:44 CDT 2017",
      "agent": {
        "extractor_id": "https://clowder.ncsa.illinois.edu/clowder/api/extractors/ncsa.versus.image",
        "@type": "cat:extractor",
        "name": "https://clowder.ncsa.illinois.edu/clowder/api/extractors/ncsa.versus.image"
      }
    },
    {
      "content": {
        "mean grayscale value": 159.91587890625001
      },
      "@context": [
        "https://clowder.ncsa.illinois.edu/contexts/metadata.jsonld",
        {
          "mean grayscale value": "http://clowder.ncsa.illinois.edu/ncsa.cv.meangrey#mean_grayscale_value"
        }
      ],
      "created_at": "Fri Jun 23 11:34:44 CDT 2017",
      "agent": {
        "extractor_id": "https://clowder.ncsa.illinois.edu/clowder/api/extractors/ncsa.cv.meangrey",
        "@type": "cat:extractor",
        "name": "https://clowder.ncsa.illinois.edu/clowder/api/extractors/ncsa.cv.meangrey"
      }
    },
    {
      "content": {
        "sha1": "aa96bac9ad1ae37c6333941de87c25ed855cf6a8",
        "sha224": "886fd6479e48135578cbf309cdf74a22b70ca000cfc402b4c3a8ebeb",
        "sha384": "0c5b6ad353576d2edd5213b25c3dd1a7f43529caa3e899c9c218f549673c9bce1ac8655b885f090cfe2ebd3921bc0a27",
        "sha256": "9fad76631d78287817489cb501a42385e3cf8012855a11bcfdf0196809ce597a",
        "sha512": "b46ce394126537ec31c51a617ad879d2dce2ba301bd11ef3dc2ed648c4024674a305a946aad009c408a31861ef5df4828238b61c98b8bd1f70fda1c4483fa2ce",
        "md5": "6ee3820d6cad624123406203303e23e8"
      },
      "@context": [
        "https://clowder.ncsa.illinois.edu/contexts/metadata.jsonld",
        {
          "sha1": "http://www.w3.org/2001/04/xmldsig-more#sha1",
          "sha224": "http://www.w3.org/2001/04/xmldsig-more#sha224",
          "sha384": "http://www.w3.org/2001/04/xmldsig-more#sha384",
          "sha256": "http://www.w3.org/2001/04/xmldsig-more#sha256",
          "sha512": "http://www.w3.org/2001/04/xmldsig-more#sha512",
          "md5": "http://www.w3.org/2001/04/xmldsig-more#md5"
        }
      ],
      "created_at": "Fri Jun 23 11:34:43 CDT 2017",
      "agent": {
        "extractor_id": "http://141.142.211.76:9000/clowder-dev//api/extractors/ncsa.file.digest",
        "@type": "cat:extractor",
        "name": "http://141.142.211.76:9000/clowder-dev//api/extractors/ncsa.file.digest"
      }
    }
  ],
  "versusmetadata": [],
  "tags": [
    "Human Profile Automatically Detected"
  ],
  "filename": "balloons.png",
  "technicalmetadata": [
    {
      "Human Preference Extractor": {
        "Definitions": {
          "Human Preference": "A Computer Vision model that uses the spectral data of an image to get a human preference value ranging from 1 to 5.",
          "Green Index": "The green index is the estimated percentage of green pixels within an image."
        },
        "Data": {
          "Green Index": "0.0"
        }
      }
    }
  ],
  "id": "594d43234f0c4db82da515dd"
}

Redirection

Like with most command line tools BD-CLI supports input  / output redirection. This can be used to integrate BD-CLI with other command-line utilities. An example is shown below. Here we are providing the name of the input file needed by BD-CLI from a text file:

Help

Below you can see the output of the command (bd -h) which basically describes how to use this client:

Brown Dog Command-Line Interface (BD-CLI)
=========================================

bd [OPTION] [FILE/DIRECTORY]
-----------------------------

Command line interface to Brown Dog services. Use to convert files between formats and extract various derived products
from file contents (e.g. tags, metadata, signatures, previews).

-b set the BD URL (e.g. https://bd-api.ncsa.illinois.edu)

-t set the token

-v verbose output

-w set wait time for conversions/extractions

-h display help

-o set output format

--outputs list the available output formats for the given file

--extractors list the available extractors for the given file

--find search current directory for a file similar to the given file

--bigdata use this flag if the file is large enough and it needs to be processed locally rather than using remote
 Brown Dog services

 **Examples:**

List available output formats for given file:

  bd --outputs image.pcd

Convert the given Kodak Photo CD image to a JPEG image.  Produces file image.jpg:

  bd -o jpg image.pcd

Convert a directory of images into the JPEG format:

  bd -o jpg images/

List available extractors for given file:

  bd --extractors image.jpg

Extract data from files contents (e.g. tags, previews, analysis, and other derived products).  Produces file image.json:

  bd image.jpg

Chain conversion and extraction.  Equivalent to the previous two examples:

  bd -o jpg image.pcd | bd

Index files within a directory:

  bd images/

Search for a similar file within a directory that has already been indexed:

  bd --find /path/image.jpg

Read input filename from a text file. This feature can be used to integrate BD-CLI with other programs by passing
filename around. Here input.txt can contain one input filename:

  bd < input.txt
  bd -o jpg < input.txt