36 namespace SourceXtractor {
75 for (
int y = 0;
y < lines;
y++) {
79 if (
y % chunk_height == 0) {
84 int dy =
y % chunk_height;
85 for (
int x=0;
x < width;
x++) {
91 bool in_object = value > 0.0;
103 if (group_stack.
back().start == -1) {
106 group_stack.
back().start =
x;
116 group_stack.
back().start =
x;
135 group_stack.
back().start = -1;
138 auto prev_group = inc_group_map.
at(
x);
141 group_stack.
back().merge_pixel_list(prev_group);
154 group_stack.
back().merge_pixel_list(old_group);
156 if (group_stack.
back().start == -1) {
157 group_stack.
back().start = old_group.start;
172 ps = ps_stack.
back();
179 if (old_group.start == -1) {
184 inc_group_map[old_group.start] = old_group;
186 ps = ps_stack.
back();
206 group_stack.
back().end =
x;
209 ps = ps_stack.
back();
214 auto old_group = group_stack.
back();
217 inc_group_map[old_group.start] = old_group;
227 for (
auto& group : inc_group_map) {
std::shared_ptr< DependentParameter< std::shared_ptr< EngineParameter > > > x
std::shared_ptr< DependentParameter< std::shared_ptr< EngineParameter > > > y
std::shared_ptr< EngineParameter > dy