find and fix error "std::vector<>::operator=()" in "void TkNimbleComponent::postprocess(std::vector<cv::Mat> &batchedImage)
{
    auto t0 = nutils::time();
    std::vector<float> cropArea = {0.0, 0.0, 1.0, 1.0};
    auto dets = this->tkNimbleDetector_->getDetections();
    assert(dets.size() == batchedImage.size());
    if (this->toCalculateDistances_)
    {
        assert(dets.size() == cameraParams_.size());
    }

    for (size_t i = 0; i < dets.size(); ++i)
    {
        if (this->toCalculateDistances_)
        {
            cropArea = this->cameraParams_[i].roi;
        }
 
        std::vector<cv::Point> tlBrCoords(2);
        tlBrCoords = this->tkNimbleDetector_->getTlBrCrops(cropArea, batchedImage[i]);
        cv::Point tl = tlBrCoords[0];
        cv::Point br = tlBrCoords[1];

        auto it = dets[i].begin();
        while(it != dets[i].end())
        {
            // Filtering bounding boxes
            // 1. Remove objects which IDs don't present in classes.names or dimensions are zero or negative
            if ((!classesDescr_[(*it).cl].toSend) || ((*it).w <= 0 || (*it).h <= 0) )
            {
                // Due to deletion in loop, iterator became
                // invalidated. So reset the iterator to next item.
                it = dets[i].erase(it);
            }
            // 2. If crop area is defined, remove bboxes, which are outside of it
            else if (!(cropArea == std::vector<float>{0, 0, 1, 1}))
            {
                if ( (((*it).x <= tl.x &&
                       ((*it).x + (*it).w) <= tl.x ) ||
                      ((*it).x >= br.x &&
                       ((*it).x + (*it).w) >= br.x )) ||
                     (((*it).y <= tl.y &&
                       ((*it).y + (*it).h) <= tl.y ) ||
                      ((*it).y >= br.y &&
                       ((*it).y + (*it).h) >= br.y ))
                    )
                {
                    it = dets[i].erase(it);
                }
                else
                {
                    it++;
                }
            }
            // 3. If bbox exceeds the image boundaries, crop it by these boundaries
            else
            {
                (*it).x = std::max<float>((*it).x, 0);
                (*it).y = std::max<float>((*it).y, 0);
                if (static_cast<int>((*it).x + (*it).w) > batchedImage[i].cols)
                {
                    (*it).w = static_cast<float>(batchedImage[i].cols - static_cast<int>((*it).x));
                }
                if (static_cast<int>((*it).y + (*it).h) > batchedImage[i].rows)
                {
                    (*it).h = static_cast<float>(batchedImage[i].rows - static_cast<int>((*it).y));
                }
                it++;
            }
        }
        // Draw detection region of interest
        if (this->toDrawCropArea_)
        {
            cv::rectangle(batchedImage[i], cv::Rect(tl, br), cv::Scalar(0, 255, 0), 2);
        }
    }
    this->tkNimbleDetector_->setDetections(dets);  // update detections after filtering

    // Draw bounding boxes
    if (!this->drawnObjectPubs_.empty())
    {
        tkNimbleDetector_->drawDetections(batchedImage);
    }
    auto t1 = nutils::time();
    if (this->toShowDebugTime_)
    {
        std::cout << "    postproc: " + std::to_string(t1-t0) << std::endl;
    }

}

"