|
@@ -70,8 +70,13 @@ struct Box
|
|
|
: left(left), top(top), right(right), bottom(bottom), score(score), class_id(class_id), label(label) {}
|
|
|
Box(const Box& b) :
|
|
|
left(b.left), top(b.top), right(b.right), bottom(b.bottom), score(b.score),
|
|
|
- class_id(b.class_id), label(b.label), keypoints(b.keypoints),
|
|
|
- seg_mask(b.seg_mask.clone()) {}
|
|
|
+ class_id(b.class_id), label(b.label), keypoints(b.keypoints)
|
|
|
+ {
|
|
|
+ if (b.seg_mask.data)
|
|
|
+ {
|
|
|
+ seg_mask = b.seg_mask.clone();
|
|
|
+ }
|
|
|
+ }
|
|
|
Box(Box&& b) noexcept :
|
|
|
left(b.left), top(b.top), right(b.right), bottom(b.bottom), score(b.score),
|
|
|
class_id(b.class_id), label(std::move(b.label)), keypoints(std::move(b.keypoints)),
|
|
@@ -86,7 +91,10 @@ struct Box
|
|
|
class_id = b.class_id;
|
|
|
label = b.label;
|
|
|
keypoints = b.keypoints;
|
|
|
- seg_mask = b.seg_mask.clone();
|
|
|
+ if (b.seg_mask.data)
|
|
|
+ {
|
|
|
+ seg_mask = b.seg_mask.clone();
|
|
|
+ }
|
|
|
return *this;
|
|
|
}
|
|
|
};
|