{
  "camitk": {
      "extensions": {
        "contact": {
            "author": "Emmanuel Promayon",
            "email": "Emmanuel.Promayon@univ-grenoble-alpes.fr"
        },
        "generationType": "Standard",
        "name": "Threshold (VTK)",
        "description": "A threshold action using VTK.",
        "license": "LGPL-3 CamiTK",
        "actions": [
            {
                "name": "Threshold (VTK)",
                "description": "Simple threshold filter based on <a href='https://vtk.org/doc/nightly/html/classvtkImageThreshold.html'>vtkImageThreshold</a>. <br/>Creates a new binary image depending on the initial voxel value:<ul><li>If the initial value is between low and high thresholds (included), the new voxel value will be set to 'In Value' (e.g., 255 that is usually displayed as white)</li><li>Otherwise the new voxel value is set to 'Out Value' (e.g., 0 that is usually displayed as black)</li></ul><p>If you want to select all the voxels that have a specific value <i>x</i>, set both thresholds to the value <i>x</i>. You can replace the in values, the out values or both with the given values (note: replacing both, the default, will result in a binary image).<p/>",
                "componentClass": "ImageComponent",
                "classification": {              
                "family": "Segmentation",
                "tags": [ 
                    "Threshold", 
                    "Manual",
                    "Classification"
                ]
                },
                "gui": "Default Action GUI",
                "implementationIncludes": "#include <vtkImageThreshold.h>",
                "parameters": [
                {
                    "defaultValue": 128.0,
                    "description": "Voxels which have a value strictly below <i>Low Threshold</i> will be set to 'Out Value' (e.g. 255, usually displayed as black).",
                    "name": "Low Threshold",
                    "type": "double",
                    "unit": "",
                    "minimum": 0.0,
                    "maximum": 255.0,
                    "singleStep": 1,
                    "decimals": 0
                },
                {
                    "defaultValue": 255.0,
                    "description": "Voxels which have a value strictly greater than <i>High Threshold</i> will be set to 'Out Value' (e.g. 0, usually displayed as black).",
                    "name": "High Threshold",
                    "type": "double",
                    "unit": "",
                    "minimum": 0.0,
                    "maximum": 255.0,
                    "singleStep": 1,
                    "decimals": 0
                },
                {
                    "name": "In Value",
                    "type": "double",
                    "defaultValue": 255.0,
                    "description": "Voxel value to use to replace the value that are in the low/high range.",
                    "minimum": 0.0,
                    "maximum": 255.0,
                    "singleStep": 1.0,
                    "decimals": 0
                },
                {
                    "name": "Out Value",
                    "type": "double",
                    "defaultValue": 0.0,
                    "description": "Voxel value to use to replace the value that are not in the low/high range.",
                    "minimum": 0.0,
                    "maximum": 255.0,
                    "singleStep": 1.0,
                    "decimals": 0,
                    "readOnly": false
                },
                {
                    "name": "Replace Values",
                    "type": "enum",
                    "defaultValue": 2,
                    "description": "Replace or not the values that are in/out of the low/high range",
                    "enumValues": [ "Replace In Values", "Replace Out Values", "Replace Both" ],                    
                    "unit": ""
                }
                ]
            }
        ]
    },
    "timestamp": "2024-04-28T16:26:59",
    "version": "camitk-6.0"
  }
}