Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagepowershell
classifier -top 3 /path/to/file.mov

# result:
{"/path/to/file.mov": [
      {"label": "torch", "description": "stick with a flaming end used as a source of light", "value": "Q327954"},
      {"label": "fire", "description": "rapid oxidation of a material", "value": "Q3196"},
      {"label": "flame", "description": "visible, gaseous part of a fire", "value": "Q235544"}
]}


Python Example

Here is an example code snippet that you could use in your python code.

Code Block
languagepy
# print the top 3 label predictions for a given file path

import json
import subprocess

path = '/path/to/file.mov'
command = ['./classifier', '--top', '3', path]
process = subprocess.Popen(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
output, error = process.communicate()

if process.returncode != 0:
    print('Something went wrong: {} - Error: {}'.format(path, error))
else:
    result = json.loads(output)
    for path, predictions in result.items():
        wikidata_ids = [item['value'] for item in  predictions]  # list of IDs from wikidata
        readable_labels = [item['label'] for item in predictions]  # list of human readable labels
        print('For path: "{}" predicted the labels: {}'.format(path, ', '.join(readable_labels)))

# result:
# For path: "/path/to/file.mov" predicted the labels: torch, flame, fire

Result

...

Format

For each file path you get an list of predictions for labels.

Info

The result is in JSON format. The default string format is Unicode.

Code Block
languagejson
{'/path/to/file.mov': [{
                          'value': 'Q327954',
                          'label': 'torch',
                          'description': 'stick with a flaming end used as a source of light'
                        }]}

...