Commit 9f1ee79b authored by aknecht2's avatar aknecht2

Added 3 new processing functions, ih-split, ih-equalize-hist, and...

Added 3 new processing functions, ih-split, ih-equalize-hist, and ih-flood-fill.  Added workflow definitions for Alex & Sarah's data.
parent 347e2102
{
"version": "1.0",
"installdir": "/home/aknecht/stash/walia/ih/ih/build/scripts-2.7/",
"profile": {
"pegasus": {
"style": "condor"
},
"condor": {
"universe": "vanilla",
"requirements": "OSGVO_OS_STRING == \"RHEL 6\" && HAS_FILE_usr_lib64_libstdc___so_6 && CVMFS_oasis_opensciencegrid_org_REVISION >= 3590",
"+WantsStashCache": "True"
}
},
"osg": {
"tarball": "/home/aknecht/stash/walia/ih/ih/dist/ih-1.0.tar.gz",
"ssh": "/home/aknecht/.ssh/workflow"
},
"cluster": 50,
"maxwalltime": {
"stats": 300,
"images": 3
},
"notify": {
"email": "avi@kurtknecht.com",
"pegasus_home": "/usr/share/pegasus/"
}
}
{
"path": "/home/aknecht/stash/9-22-15_lemnatec_images/alexmac/%experiment%_%id%-%genotype%_%date%_%null%_%null%/%stype%_%view%_%angle%/0_0_0.png",
"base": "/home/aknecht/stash/9-22-15_lemnatec_images/alexmac/",
"filetype": ".png",
"order": ["experiment", "id", "genotype", "date", "imgname", "imtype", "path"],
"translations": {
"imtype": {
"fluo_sv": "fluosv",
"vis_tv": "rgbtv",
"vis_sv": "rgbsv"
}
},
"data": {
"experiment": {
"type": "value",
"value": "%experiment%"
},
"id": {
"type": "value",
"value": "%id%"
},
"genotype": {
"type": "value",
"value": "%genotype%"
},
"date": {
"type": "date",
"value": "%date%",
"format": "Y-m-d"
},
"imtype": {
"type": "value",
"translate": "true",
"value": "%stype%_%view%",
"case": "lower"
},
"imgname": {
"type": "value",
"value": "%stype%_%view%_%angle%"
}
}
}
{
"ystart": 590,
"yend": 1190,
"xstart": 219,
"xend": 799
}
{
"workflows": {
"fluosv": [
{
"name": "gray",
"executable": "ih-convert-color",
"inputs": ["base"],
"outputs": ["grayscale"],
"arguments": {
"--intype": "bgr",
"--outtype": "gray"
}
},
{
"name": "blur",
"executable": "ih-gaussian-blur",
"inputs": ["grayscale"],
"outputs": ["blurred"],
"arguments": {
"--kwidth": 5,
"--kheight": 5
},
"depends": ["gray"]
},
{
"name": "thresh",
"executable": "ih-threshold",
"inputs": ["blurred"],
"outputs": ["masked"],
"arguments": {
"--thresh": 0,
"--max": 255,
"--type": "otsu"
},
"depends": ["blur"]
},
{
"name": "reconstitute",
"executable": "ih-bitwise-and",
"inputs": ["masked", "base"],
"outputs": ["recolor"],
"arguments": {},
"depends": ["thresh"]
},
{
"name": "crop",
"executable": "ih-crop",
"inputs": ["recolor", "/home/aknecht/stash/walia/ih/workflows/alexmac/input/fluosv_edge.json"],
"outputs": ["edged"],
"arguments": {},
"depends": ["reconstitute"]
},
{
"name": "cut",
"executable": "ih-contour-cut",
"inputs": ["edged", "edged"],
"outputs": ["final"],
"arguments": {
"--resize": "",
"--basemin": 50
},
"depends": ["crop"]
}
],
"rgbtv": [
{
"name": "blur",
"executable": "ih-gaussian-blur",
"inputs": ["base"],
"outputs": ["blurred"],
"arguments": {
"--kwidth": 13,
"--kheight": 13
}
},
{
"name": "sharpen",
"executable": "ih-add-weighted",
"inputs": ["base", "blurred"],
"outputs": ["sharpened"],
"arguments": {
"--weight1": 1.5,
"--weight2": -0.5
},
"depends": ["blur"]
},
{
"name": "crop",
"executable": "ih-crop",
"inputs": ["sharpened", "/home/aknecht/stash/walia/ih/workflows/alexmac/input/rgbtv_edge.json"],
"outputs": ["edged"],
"arguments": {},
"depends": ["sharpen"]
},
{
"name": "cfilter1",
"executable": "ih-color-filter",
"inputs": ["edged"],
"outputs": ["cf1"],
"arguments": {
"--logic": "((r > b) or ((g > r) and ((g - b) > 10)))"
},
"depends": ["crop"]
},
{
"name": "bgr_lab",
"executable": "ih-convert-color",
"inputs": ["cf1"],
"outputs": ["lab_spectrum"],
"arguments": {
"--intype": "bgr",
"--outtype": "lab"
},
"depends": ["cfilter1"]
},
{
"name": "labfilter1",
"executable": "ih-color-filter",
"inputs": ["lab_spectrum"],
"outputs": ["lf1"],
"arguments": {
"--logic": "((r - g) > 5)"
},
"depends": ["bgr_lab"]
},
{
"name": "labfilter2",
"executable": "ih-color-filter",
"inputs": ["lf1"],
"outputs": ["lf2"],
"arguments": {
"--logic": "((r > b) and (g > b))"
},
"depends": ["labfilter1"]
},
{
"name": "mask",
"executable": "ih-mask",
"inputs": ["lf2"],
"outputs": ["masked"],
"arguments": {},
"depends": ["labfilter2"]
},
{
"name": "reconstitute",
"executable": "ih-bitwise-and",
"inputs": ["masked", "base"],
"outputs": ["recolor"],
"arguments": {},
"depends": ["mask"]
},
{
"name": "cfilter2",
"executable": "ih-color-filter",
"inputs": ["recolor"],
"outputs": ["cf2"],
"arguments": {
"--logic": "(((r - g) < ((i * i) / 4000)) or (((r - g) > (40 * (1 - (i / 765)))) and ((r - b) > (60 * (1 - (i / 765))))))"
},
"depends": ["reconstitute"]
},
{
"name": "erode",
"executable": "ih-morphology",
"inputs": ["cf2"],
"outputs": ["morph_erode"],
"arguments": {
"--ktype": "ellipse",
"--kwidth": 3,
"--kheight": 3,
"--morphType": "erode"
},
"depends": ["cfilter2"]
},
{
"name": "contour_chop",
"executable": "ih-contour-chop",
"inputs": ["morph_erode", "morph_erode"],
"outputs": ["chop"],
"arguments": {
"--basemin": 100
},
"depends": ["erode"]
},
{
"name": "mask2",
"executable": "ih-mask",
"inputs": ["chop"],
"outputs": ["mask2"],
"arguments": {},
"depends": ["contour_chop"]
},
{
"name": "dilate",
"executable": "ih-morphology",
"inputs": ["mask2"],
"outputs": ["morph_dilate"],
"arguments": {
"--ktype": "ellipse",
"--kwidth": 3,
"--kheight": 3,
"--morphType": "dilate"
},
"depends": ["mask2"]
},
{
"name": "reconstitute2",
"executable": "ih-bitwise-and",
"inputs": ["morph_dilate", "base"],
"outputs": ["recolor2"],
"arguments": {},
"depends": ["dilate"]
},
{
"name": "cut",
"executable": "ih-contour-cut",
"inputs": ["recolor2", "recolor2"],
"outputs": ["final"],
"arguments": {
"--basemin": 100,
"--resize": ""
},
"depends": ["reconstitute2"]
}
],
"rgbsv": [
{
"name": "gray",
"executable": "ih-convert-color",
"inputs": ["base"],
"outputs": ["grayscale"],
"arguments": {
"--intype": "bgr",
"--outtype": "gray"
}
},
{
"name": "blur",
"executable": "ih-gaussian-blur",
"inputs": ["grayscale"],
"outputs": ["blurred"],
"arguments": {
"--kwidth": 5,
"--kheight": 5
},
"depends": ["gray"]
},
{
"name": "thresh",
"executable": "ih-adaptive-threshold",
"inputs": ["blurred"],
"outputs": ["thresh"],
"arguments": {
"--value": 255,
"--thresholdType": "inverse",
"--adaptiveType": "mean",
"--blockSize": 15,
"--C": 6
},
"depends": ["blur"]
},
{
"name": "reconstitute",
"executable": "ih-bitwise-and",
"inputs": ["thresh", "base"],
"outputs": ["recolor"],
"arguments": {},
"depends": ["thresh"]
},
{
"name": "crop",
"executable": "ih-crop",
"inputs": ["recolor", "/home/aknecht/stash/walia/ih/workflows/alexmac/input/rgbsv_edge.json"],
"outputs": ["edged"],
"arguments": {},
"depends": ["reconstitute"]
},
{
"name": "fill",
"executable": "ih-fill",
"inputs": ["edged", "/home/aknecht/stash/walia/ih/workflows/alexmac/input/rgbsv_pot.json"],
"outputs": ["filled"],
"arguments": {},
"depends": ["crop"]
},
{
"name": "cut",
"executable": "ih-contour-cut",
"inputs": ["filled", "filled"],
"outputs": ["final"],
"arguments": {
"--basemin": 50,
"--resize": ""
},
"depends": ["fill"]
}
]
},
"options": {
},
"extract": {
"histogram-bin": {
"--group": {"rgb": ["rgbsv", "rgbtv"], "fluo": ["fluosv"]},
"--chunks": {"rgb": [5, 5, 5], "fluo": [0, 9, 10]},
"--channels": {"rgb": [0, 1, 2], "fluo": [1, 2]}
},
"workflows": {
"rgbsv": {
"inputs": ["final"],
"arguments": {
"--dimensions": "",
"--pixels": "",
"--moments": "",
"--circle": "",
"--hull": ""
},
"depends": ["cut"]
},
"rgbtv": {
"inputs": ["final"],
"arguments": {
"--dimensions": "",
"--pixels": "",
"--moments": "",
"--circle": "",
"--hull": ""
},
"depends": ["cut"]
},
"fluosv": {
"inputs": ["final"],
"arguments": {
"--dimensions": "",
"--pixels": "",
"--moments": "",
"--circle": "",
"--hull": ""
},
"depends": ["cut"]
}
}
}
}
{
"ystart": 400,
"yend": "y",
"xstart": 400,
"xend": "x - 400"
}
{
"ystart": 1746,
"yend": 2056,
"xstart": 992,
"xend": 1572
}
{
"ystart": 350,
"yend": "y - 350",
"xstart": 350,
"xend": "x - 350"
}
{
"version": "1.0",
"installdir": "/home/aknecht/stash/walia/ih/ih/build/scripts-2.7/",
"profile": {
"pegasus": {
"style": "condor"
},
"condor": {
"universe": "vanilla",
"requirements": "OSGVO_OS_STRING == \"RHEL 6\" &amp;&amp; HAS_FILE_usr_lib64_libstdc___so_6 &amp;&amp; CVMFS_oasis_opensciencegrid_org_REVISION >= 3590",
"+WantsStashCache": "True"
}
},
"osg": {
"tarball": "/home/aknecht/stash/walia/ih/ih/dist/ih-1.0.tar.gz",
"ssh": "/home/aknecht/.ssh/workflow"
},
"cluster": 50,
"maxwalltime": {
"stats": 300,
"images": 3
},
"notify": {
"email": "avi@kurtknecht.com",
"pegasus_home": "/usr/share/pegasus/"
}
}
{
"path": "/home/aknecht/stash/9-22-15_lemnatec_images/Blecha 81315/%experiment%_%id%-%genotype%_%date%_%null%_%null%/%stype%_%view%_%angle%/0_0_0.png",
"base": "/home/aknecht/stash/9-22-15_lemnatec_images/Blecha 81315/",
"filetype": ".png",
"order": ["experiment", "id", "genotype", "date", "imgname", "imtype", "path"],
"translations": {
"imtype": {
"fluo_sv": "fluosv",
"vis_tv": "rgbtv",
"vis_sv": "rgbsv"
}
},
"data": {
"experiment": {
"type": "value",
"value": "%experiment%"
},
"id": {
"type": "value",
"value": "%id%"
},
"genotype": {
"type": "value",
"value": "%genotype%"
},
"date": {
"type": "date",
"value": "%date%",
"format": "Y-m-d"
},
"imtype": {
"type": "value",
"translate": "true",
"value": "%stype%_%view%",
"case": "lower"
},
"imgname": {
"type": "value",
"value": "%stype%_%view%_%angle%"
}
}
}
{
"ystart": 590,
"yend": 1190,
"xstart": 219,
"xend": 799
}
{
"workflows": {
"rgbtv": [
{
"name": "normalize",
"executable": "ih-normalize-intensity",
"inputs": ["base"],
"outputs": ["normal"],
"arguments": {}
},
{
"name": "crop_center",
"executable": "ih-crop",
"inputs": ["normal", "rgbtv_center.json"],
"outputs": ["centeronly"],
"arguments": {},
"depends": ["normalize"]
},
{
"name": "green_filter",
"executable": "ih-color-filter",
"inputs": ["centeronly"],
"outputs": ["gfilter"],
"arguments": {
"--logic": "(((g - r) > 15) and ((g - b) > 15))"
},
"depends": ["crop_center"]
},
{
"name": "create_seed_mask",
"executable": "ih-mask",
"inputs": ["gfilter"],
"outputs": ["seedmask"],
"arguments": {},
"depends": ["green_filter"]
},
{
"name": "blur",
"executable": "ih-blur",
"inputs": ["normal"],
"outputs": ["blurred"],
"arguments": {
"--kwidth": 3,
"--kheight": 3
},
"depends": ["normalize"]
},
{
"name": "sharpen",
"executable": "ih-add-weighted",
"inputs": ["normal", "blurred"],
"outputs": ["sharpened"],
"arguments": {
"--weight1": 1.5,
"--weight2": -0.5
},
"depends": ["blur"]
},
{
"name": "extract_green",
"executable": "ih-split",
"inputs": ["sharpened"],
"outputs": ["gchannel"],
"arguments": {
"--channel": 1
},
"depends": ["sharpen"]
},
{
"name": "equalize",
"executable": "ih-equalize-hist",
"inputs": ["gchannel"],
"outputs": ["equalized"],
"arguments": {},
"depends": ["extract_green"]
},
{
"name": "bg_cfilter",
"executable": "ih-color-filter",
"inputs": ["normal"],
"outputs": ["bg_noise"],
"arguments": {
"--logic": "(((high - low) < (i / 30)) or ((b - r) > (i / 10)))"
},
"depends": ["normalize"]
},
{
"name": "bgmask",
"executable": "ih-mask",
"inputs": ["bg_noise"],
"outputs": ["bg_mask"],
"arguments": {},
"depends": ["bg_cfilter"]
},
{
"name": "flood",
"executable": "ih-flood-fill",
"inputs": ["equalized", "bg_mask", "seedmask"],
"outputs": ["flooded"],
"arguments": {
"--low": "50",
"--high": "50",
"--writecolor": "255",
"--connectivity": 8,
"--findSeed": "",
"--binary": ""
},
"depends": ["equalize", "bgmask", "create_seed_mask"]
},
{
"name": "thresh",
"executable": "ih-threshold",
"inputs": ["flooded"],
"outputs": ["flood_binary"],
"arguments": {
"--thresh": 254,
"--type": "inverse"
},
"depends": ["flood"]
},
{
"name": "combine_with_mask",
"executable": "ih-bitwise-or",
"inputs": ["flood_binary", "bgmask"],
"outputs": ["invmask"],
"arguments": {},
"depends": ["thresh"]
},
{
"name": "invert",
"executable": "ih-bitwise-not",
"inputs": ["invmask"],
"outputs": ["premask"],
"arguments": {},
"depends": ["combine_with_mask"]
},
{
"name": "crop_edges",
"executable": "ih-crop",
"inputs": ["premask", "rgbtv_edge.json"],
"outputs": ["edged_mask"],
"depends": ["invert"]
},
{
"name": "chop",
"executable": "ih-contour-chop",
"inputs": ["edged_mask", "edged_mask"],
"outputs": ["chopped"],
"arguments": {
"--basemin": 50
},
"depends": ["crop_edges"]
},
{
"name": "erode",
"executable": "ih-morphology",
"inputs": ["chopped"],
"outputs": ["morph_erode"],
"arguments": {
"--ktype": "ellipse",
"--kwidth": 3,
"--kheight": 3,
"--morphType": "erode"
},
"depends": ["chop"]
},
{
"name": "dilate",
"executable": "ih-morphology",
"inputs": ["morph_erode"],
"outputs": ["morph_dilate"],
"arguments": {
"--ktype": "ellipse",
"--kwidth": 3,
"--kheight": 3,
"--morphType": "dilate"