8

对于使用OpenCV库进行图像处理的基于 Web 的项目,什么是一个好的平台?我找到了 Wt ( http://www.webtoolkit.eu/wt )。

我可以将OpenCV与 Wt 一起使用吗?Wt 有更好的替代品吗?

要求:

用于上传文档、选择图像区域、使用OpenCV进行手写字/行检测的登录页面 GUI

4

3 回答 3

4

我过去使用过 Wt,它非常有用,虽然体积很大。它的臃肿与必须支持各种各样的网络浏览器有关,因此在某些情况下它是一项功能。

如果您更像是一个接近金属的程序员,我会推荐 PION,并使用您的一些 Web 创作技能来实现您的 GUI:

http://www.pion.org/projects/pion-network-library

您可以将 OpenCV 与几乎任何网络库一起使用。StackOverflow 上对您的选择进行了很好的回顾:

https://stackoverflow.com/questions/175507/cc-web-server-library

于 2010-12-12T08:15:50.443 回答
1

我认为 Wt 可以满足您的要求。我无法预见在 Wt 中链接 OpenCV 会出现问题,而且该系统的交互性绝对足以提供您描述的功能。首先使用服务器端操作来实现它,如果需要,您仍然可以使用少量客户端 JS 来优化部分。

于 2010-12-30T13:54:56.857 回答
0

FWIW,这是一个显示 OpenCV 图像的简单代码(可能在应用程序运行时更改图像):

Wt::WMemoryResource* cvMat2res(const cv::Mat& img){
    std::vector<uchar> buf;
    cv::imencode(".png",img,buf); // by default, the fastest compression
    auto ret=new Wt::WMemoryResource(this);
    ret->setMimeType("mime/png");
    ret->setData(buf); // data is copied here
    return ret;
}

/* ... */
auto img=new Wt::Image();
root()->addWidget(img);
Wt::WMemoryResource* imgRes=nullptr;

/* set image data; this can be done also in event handler and the image updates itself automatically from the new resource */
if(imgRes) delete imgRes;
imgRes=cvMat2res(cvImage);
img->setImageLink(imgRes);
于 2018-01-19T11:16:34.150 回答