小编ana*_*Bad的帖子

QPainter保留以前的图纸

这是我第一次使用Qt,我必须使用Qt制作MSPaint.然而,我在绘制线条时遇到了麻烦.我现在可以通过点击屏幕上的某个位置并在其他地方释放来画线,但是当我画第二行时,前一行被删除.在绘制另一个项目时,如何保留以前绘制的项目?

void Canvas::paintEvent(QPaintEvent *pe){
    QWidget::paintEvent(pe);
    QPainter p(this);
    p.drawPicture(0,0,pic);
}

void Canvas::mousePressEvent(QMouseEvent *mp){
    start = mp->pos();
}

void Canvas::mouseReleaseEvent(QMouseEvent *mr){
    end = mr->pos();
    addline();
}

void Canvas::addline()Q_DECL_OVERRIDE{
    QPainter p(&pic);
    p.drawLine(start,end);
    p.end();
    this->update();
}
Run Code Online (Sandbox Code Playgroud)

Canvas是一个派生QWidget的类,它有2个QPoint属性的开始和结束.

班级机构:

class Canvas : public QWidget{
Q_OBJECT
private:
    QPoint start;
    QPoint end;
    QPicture pic;
public:
    Canvas(){paint = false;setAttribute(Qt::WA_StaticContents);}
    void addline();
protected:
    void paintEvent(QPaintEvent *);
    void  mousePressEvent( QMouseEvent * );
    //void  mouseMoveEvent( QMouseEvent * );
    void  mouseReleaseEvent( QMouseEvent * );

};
Run Code Online (Sandbox Code Playgroud)

c++ qt qpainter

8
推荐指数
1
解决办法
1441
查看次数

如何返回包含PyObject *的boost :: python :: tuple?

我目前有一个boost.python类,用于从basler摄像机获取图像,将它们转换为opencv图像,并将它们作为numpy数组返回给python脚本。

我最初有以下有效的代码:

    PyObject *capture()
    {
        PyObject * ret;
        CGrabResultPtr ptrGrabResult;
        CPylonImage pylonImage;
        Mat image;
        //timer t;
        try
        {
            // Set timer to 0
            //t.reset();

            // get a pointer to pylon image
            camera->RetrieveResult( 50000, ptrGrabResult, TimeoutHandling_ThrowException);

            // Get dimensions of image
            int imageWidthPixels = ptrGrabResult->GetWidth();
            int imageHeightPixels = ptrGrabResult->GetHeight();

             if (ptrGrabResult->GrabSucceeded())
             {
                // Convert Grab result from YUV422 to BGR8
                formatConverter->Convert(pylonImage, ptrGrabResult);

                // Convert pylon image to opencv image
                image = Mat(imageHeightPixels, imageWidthPixels, CV_8UC3, (std::uint8_t *) pylonImage.GetBuffer());
                // Convert opencv image …
Run Code Online (Sandbox Code Playgroud)

c++ boost boost-python

3
推荐指数
1
解决办法
433
查看次数

在 Tensorflow 2.1 中转换后无法加载 Tensor RT SavedModel

我一直在尝试按照 NVIDIA 网站上的教程(https://docs.nvidia.com/deeplearning/frameworks/tf-trt-user-guide/index.html )将Tensorflow 2 中实现的 YOLOv3 模型转换为 Tensor RT #worflow-with-savedmodel)。

我使用 SavedModel 方法进行转换,并成功将原始模型转换为 FP16 并将结果保存为新的 SavedModel。当新的 SavedModel 在进行转换的同一进程中加载​​时,它会正确加载,并且我能够对图像运行推理,但是当我尝试将 FP16 保存的模型加载到新流程。当我尝试执行此操作时,出现以下错误:

2020-04-01 10:39:42.428094: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libnvinfer.so.6
2020-04-01 10:39:42.447415: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libnvinfer_plugin.so.6
Coco names not found, class labels will be empty
2020-04-01 10:39:53.892453: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcuda.so.1
2020-04-01 10:39:53.920870: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1555] Found device 0 with properties: 
pciBusID: 0000:01:00.0 name: TITAN Xp computeCapability: 6.1
coreClock: 1.582GHz coreCount: 30 …
Run Code Online (Sandbox Code Playgroud)

python tensorflow tensorrt

3
推荐指数
1
解决办法
3873
查看次数

标签 统计

c++ ×2

boost ×1

boost-python ×1

python ×1

qpainter ×1

qt ×1

tensorflow ×1

tensorrt ×1