25 #include <fvmodels/color/thresholds.h> 31 namespace firevision {
39 ColorModelThresholds::determine(
unsigned int y,
unsigned int u,
unsigned int v)
const 41 if (y >= THRESHOLD_WHITE_Y_LOW) {
44 if (u <= THRESHOLD_GREEN_U_HIGH && v <= THRESHOLD_GREEN_V_HIGH) {
47 u <= THRESHOLD_ORANGE_U_HIGH && v >= THRESHOLD_ORANGE_V_LOW) {
49 }
else if (u >= THRESHOLD_BLUE_U_LOW && v <= THRESHOLD_BLUE_V_HIGH) {
51 }
else if (u <= THRESHOLD_YELLOW_U_HIGH && v >= THRESHOLD_YELLOW_V_LOW) {
53 }
else if (u >= THRESHOLD_MAGENTA_U_LOW && v >= THRESHOLD_MAGENTA_V_LOW) {
55 }
else if (THRESHOLD_CYAN_U_LOW <= u && u <= THRESHOLD_CYAN_U_HIGH
56 && v <= THRESHOLD_CYAN_V_HIGH) {
64 ColorModelThresholds::get_name()
66 return "ColorModelThresholds";
72 ColorModelThresholds::print_thresholds()
74 cout <<
"ColorModelThresholds" << endl
75 <<
"==========================================================" << endl
76 <<
"Orange: u_low=" << THRESHOLD_ORANGE_U_LOW <<
" u_high=" << THRESHOLD_ORANGE_U_HIGH
77 <<
" v_low=" << THRESHOLD_ORANGE_V_LOW << endl
78 <<
"Yellow: u_high=" << THRESHOLD_YELLOW_U_HIGH <<
" v_low=" << THRESHOLD_YELLOW_V_LOW