24 #include <fvutils/color/color_object_map.h>
26 namespace firevision {
73 ColorObjectMap* ColorObjectMap::__singleton =
new ColorObjectMap();
78 ColorObjectMap::ColorObjectMap()
81 __h_unknown = H_UNKNOWN;
84 set_mapping(H_BALL, C_ORANGE);
85 set_mapping(H_ROBOT, C_BLACK);
86 set_mapping(H_ROBOT_OPP, C_RED);
87 set_mapping(H_FIELD, C_GREEN);
88 set_mapping(H_GOAL_YELLOW, C_YELLOW);
89 set_mapping(H_GOAL_BLUE, C_CYAN);
90 set_mapping(H_LINE, C_WHITE);
91 set_mapping(H_BACKGROUND, C_BACKGROUND);
95 ColorObjectMap::~ColorObjectMap()
103 YUV_t ColorObjectMap::get_color(color_t color)
107 return YUV_t::orange();
110 return YUV_t::magenta();
113 return YUV_t::cyan();
116 return YUV_t::blue();
119 return YUV_t::yellow();
122 return YUV_t::green();
125 return YUV_t::white();
131 return YUV_t::black();
134 return YUV_t::gray();
143 void ColorObjectMap::set_mapping(hint_t roi, color_t color)
145 hint_t cur_roi =
get(color);
146 if (cur_roi != H_UNKNOWN)
148 color_t cur_col =
get(roi);
149 __color_for_hint[cur_roi] = C_OTHER;
150 __hint_for_color[cur_col] = H_UNKNOWN;
153 __color_for_hint[roi] = color;
154 __hint_for_color[color] = roi;