]> Creatis software - FrontAlgorithms.git/blob - appli/CTBronchi/CTBronchi_process.sh
f22b699ce9c40efc1e692ed0120ac138bc65d958
[FrontAlgorithms.git] / appli / CTBronchi / CTBronchi_process.sh
1 #!/bin/bash
2
3 ## Command line arguments
4 while [[ "$#" -gt 1 ]]; do
5     key="$1"
6     case $key in
7         -input)
8         input="$2"
9         shift
10         ;;
11         -seed)
12         sx="$2"
13         sy="$3"
14         sz="$4"
15         shift
16         ;;
17         -mori)
18         mori="$2"
19         shift
20         ;;
21         -labels)
22         labels="$2"
23         shift
24         ;;
25         -output)
26         output="$2"
27         shift
28         ;;
29         *)
30         # Do nothing
31         ;;
32     esac
33     shift
34 done
35 if [ -z "$input" ] || [ -z "$sx" ] || [ -z "$sy" ] || [ -z "$sz" ]; then
36     (>&2 echo "Usage: $0 -input input_raw_image -seed x y z [-mori mori_image_dfilename] [-labels labels_image_filename] [-output output_image_filename] [-mori_init_threshold value] [-mori_end_threshold value] [-mori_delta value] [-mori_minimum_threshold value] [-mori_inside_value value] [-mori_outside_value value] [-mori_signal_kernel_size value] [-mori_signal_threshold value] [-mori_signal_influence value] [-label_upper_threshold value] [-label_inside value] [-label_outside value] [-random_walker_beta value]")
37     exit 1
38 fi
39 if [ -z "$mori_init_threshold" ]; then mori_init_threshold="-1024"; fi
40 if [ -z "$mori_end_threshold" ]; then mori_end_threshold="0"; fi
41 if [ -z "$mori_delta" ]; then mori_delta="1"; fi
42 if [ -z "$mori_minimum_threshold" ]; then mori_minimum_threshold="-850"; fi
43 if [ -z "$mori_inside_value" ]; then mori_inside_value="255"; fi
44 if [ -z "$mori_outside_value" ]; then mori_outside_value="0"; fi
45 if [ -z "$mori_signal_kernel_size" ]; then mori_signal_kernel_size="20"; fi
46 if [ -z "$mori_signal_threshold" ]; then mori_signal_threshold="500"; fi
47 if [ -z "$mori_signal_influence" ]; then mori_signal_influence="0.5"; fi
48 if [ -z "$label_upper_threshold" ]; then label_upper_threshold="-600"; fi
49 if [ -z "$label_inside" ]; then label_inside="1"; fi
50 if [ -z "$label_outside" ]; then label_outside="2"; fi
51 if [ -z "$random_walker_beta" ]; then random_walker_beta="20"; fi
52
53 base_name=`dirname $input`/`basename $input .mhd`
54 if [ -z "$mori" ]; then
55     mori="$base_name"_mori.mhd
56 fi
57 signal="$mori"_signal.txt
58 if [ -z "$labels" ]; then
59     labels="$base_name"_labels.mhd
60 fi
61 if [ -z "$output" ]; then
62     output="$base_name"_rw.mhd
63 fi
64
65 exec_dir=`dirname $0`
66 mori_seg=`dirname $0`/fpa_CTBronchi_MoriSegmentation
67 mori_lab=`dirname $0`/fpa_CTBronchi_MoriLabelling
68 random_walker=`dirname $0`/fpa_CTBronchi_RandomWalker
69
70 $mori_seg \
71     $input $mori $signal \
72     $mori_init_threshold \
73     $mori_end_threshold \
74     $mori_delta \
75     $mori_minimum_threshold \
76     $mori_inside_value \
77     $mori_outside_value \
78     $mori_signal_kernel_size \
79     $mori_signal_threshold \
80     $mori_signal_influence \
81     $sx $sy $sz
82
83 $mori_lab \
84     $input $mori $labels \
85     $label_upper_threshold \
86     $mori_inside_value \
87     $label_inside \
88     $label_outside
89
90 $random_walker \
91     $input $labels $output \
92     $label_inside \
93     $random_walker_beta
94
95 ## eof - $RCSfile$