小编kar*_*lip的帖子

OpenCV 2.2中的像素访问

嗨,我想用opencv告诉我空白图像的像素值,所以输出看起来像这样

10001
00040
11110   
00100
Run Code Online (Sandbox Code Playgroud)

这是我当前的代码,但我不知道如何访问CV_GET_CURRENT调用的结果..任何帮助?

IplImage readpix(IplImage*  m_image) {


  cout << "Image width  : " << m_image->width << "\n"; 
  cout << "Image height : " << m_image->height << "\n"; 
  cout << "-----------------------------------------\n"; 


  CvPixelPosition8u position;

  CV_INIT_PIXEL_POS(position, (unsigned char*)(m_image->imageData), m_image->widthStep, cvSize(m_image->width, m_image->height), 0, 0, m_image->origin);

  for(int y = 0; y < m_image->height; ++y) // FOR EACH ROW
  {
    for(int x = 0; x < m_image->width; ++x) // FOR EACH COL 
      {
        CV_MOVE_TO(position, x, y, 1);
        unsigned char colour = …
Run Code Online (Sandbox Code Playgroud)

opencv pixel image-processing computer-vision

12
推荐指数
1
解决办法
2万
查看次数

OpenCV中的位移贴图过滤器

我很想知道如何使用OpenCV 实现此处演示效果.我认为这是某种位移贴图滤镜,但我不是100%肯定.

在该页面完全加载后,移动鼠标以查看背景图像移动(这是我正在寻找的效果).

可能吗?我该怎么做呢?

注意:此处还有另一页显示相同的效果.

c c++ opencv image-processing

12
推荐指数
1
解决办法
4503
查看次数

简单的cuda编译出错

FSPB_main.cpp

int main(int args, char* argv[]){    
    .......   

   float *d_a;   
   cudaMalloc( (void**)&d_a, 5*sizeof(float) );

}
Run Code Online (Sandbox Code Playgroud)

$ nvcc -L/usr/local/cuda/lib -lcutil -lcudpp -lcuda -lcudart -c -o FSPB_main.o FSPB_main.cpp

FSPB_main.cpp:在函数'int main(int,char**)'中:FSPB_main.cpp:167:45:错误:'cudaMalloc'未在此范围内声明

这个错误是什么意思?它只是一个cudaMalloc并且它假设为编译器支持吗?

像cudaMalloc这样的函数可以用在.cpp文件中吗?我是否需要为来自CUDA的任何内容创建.cu文件?

c c++ cuda gpu

11
推荐指数
1
解决办法
1万
查看次数

找到论文的一角

我是openCV的新手,因此在过去的3到4天里一直在努力,我已经检测到纸张边界,现在我想在角落上绘制4个圆圈.

我从这段代码中画出边界

const cv::Point* p = &squares[i][0];

int n = (int)squares[i].size();

polylines(image, &p,&n, 1, true, Scalar(255,255,0), 5, CV_AA);
Run Code Online (Sandbox Code Playgroud)

我是openCV的新手,所以在我看来我有左上角点p-> x和p-> y,但是我如何得到其他角落,我也对这个折线方法中的参数&n感到困惑,这个折线方法怎么样绘制完整的矩形?

当我使用边界矩形时,它并不完美,它给纸张侧面留下了一点空间.

任何帮助都非常感谢

代码是:

- (cv::Mat)finshWork:(cv::Mat &)image
{
// read in the apple (change path to the file)
Mat img0 =image;// imread("/home/philipp/img/apple.jpg", 1);

Mat img1;
cvtColor(img0, img1, CV_RGB2GRAY);

// apply your filter
Canny(img1, img1, 100, 200);

// find the contours
vector< vector<cv::Point> > contours;
findContours(img1, contours, CV_RETR_EXTERNAL, CV_CHAIN_APPROX_NONE);

/////for SQUARE CODE
std::vector<std::vector<cv::Point> > squares;
std::vector<cv::Point> approx;
for( size_t i = …
Run Code Online (Sandbox Code Playgroud)

iphone opencv image-processing objective-c ios

11
推荐指数
1
解决办法
7626
查看次数

Qt图表在PDF上呈现问题

我正在使用Qt charts模块直接在PDF文件上绘制饼图.

这是问题所在:

  • 由于某些未知原因,图表需要show()在呈现给PDF之前显示,因为它的大小正常(左图).

  • 另一方面,我不想在屏幕上显示每个图表,因为我的应用程序会生成很多图表.但是,如果图表未显示在窗口中show(),则即使正确设置了图表的大小,PDF(右图)中的图形也会变得太小resize().

(在这些图像中添加了黑色边框以改善可视化)

在窗口上呈现所有图表,然后再将它们呈现给PDF不是一种选择.图表需要执行show()以便QPainter正确地将其绘制到PDF 这一事实似乎表明没有它,QPainter会忽略图表的维度.

在旁注中,show()打开窗口但是图表显示需要几秒钟,因此渲染非常慢,这是我不想显示图表的另一个原因.

所以这是我的主要问题:

  • 这些错误还是我错过了什么?
  • 如果没有,那么指定图纸的尺寸和(x,y)位置的正确方法是什么(在PDF中)?

这是一个最小的,完整的,可验证的例子 ......

main.cpp:

#include <QApplication>
#include <QtCharts/QChartView>
#include <QtCharts/QPieSeries>
#include <QtCharts/QPieSlice>
#include <QPainter>
#include <QPdfWriter>


int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    QtCharts::QChartView* chartView = new QtCharts::QChartView();
    chartView->setRenderHint(QPainter::Antialiasing);
    chartView->resize(640, 480);

    QtCharts::QChart* chart = chartView->chart();
    chart->setTitle("Beautiful Pie Chart");
    chart->legend()->hide();

    QtCharts::QPieSeries* series = new QtCharts::QPieSeries();
    float hits = …
Run Code Online (Sandbox Code Playgroud)

c++ pdf charts qt qpainter

11
推荐指数
1
解决办法
3863
查看次数

Qt Qt5Network静态构建链接错误

我正在尝试使用OpenSSL支持进行Qt(版本5.4.1)的静态构建.我配置如下:

configure -opensource -release -c++11 -static -platform win32-msvc2013 
-openssl-linked  -I C:\OpenSSL-Win32\include 
-L C:\OpenSSL-Win32\lib\VC\static
-nomake examples -nomake tests
Run Code Online (Sandbox Code Playgroud)

include和lib目录有效.我收到大量的链接错误Qt5Network.lib.

Qt5Network.lib(qhttpnetworkconnectionchannel.obj) : error LNK2019: unresolved ex
ternal symbol "public: static class QSharedPointer<class QSslContext> __cdecl QS
slSocketPrivate::sslContext(class QSslSocket *)" (?sslContext@QSslSocketPrivate@
@SA?AV?$QSharedPointer@VQSslContext@@@@PAVQSslSocket@@@Z) referenced in function
 "protected: void __thiscall QHttpNetworkConnectionChannel::_q_connected(void)"
(?_q_connected@QHttpNetworkConnectionChannel@@IAEXXZ)
Qt5Network.lib(qhttpprotocolhandler.obj) : error LNK2019: unresolved external sy
mbol "public: __int64 __thiscall QSslSocket::encryptedBytesToWrite(void)const "
(?encryptedBytesToWrite@QSslSocket@@QBE_JXZ) referenced in function "private: vi
rtual bool __thiscall QHttpProtocolHandler::sendRequest(void)" (?sendRequest@QHt
tpProtocolHandler@@EAE_NXZ)
C:\Qt\5.4\qtbase\bin\xmlpatterns.exe : fatal error LNK1120: 31 unresolved …
Run Code Online (Sandbox Code Playgroud)

c++ deployment qt compilation static-linking

11
推荐指数
1
解决办法
2112
查看次数

使用OpenCV,尝试提取ArrayOfArrays描述的图片区域

我正在iOS中开发一些图像处理工具.目前,我有一个计算的特征轮廓,其类型为InputArrayOfArrays.

声明为:

std::vector<std::vector<cv::Point> > contours_final( temp_contours.size() );
Run Code Online (Sandbox Code Playgroud)

现在,我想提取由轮廓圈出的原始RGB图像的区域,并且可以进一步将子图像存储为cv :: Mat格式.我怎样才能做到这一点?

提前致谢!

c++ opencv contour

10
推荐指数
1
解决办法
2万
查看次数

是否有可能在emgucv中找到"斑点"区域的边缘?

我有一个看起来像这样的图像:

原版的

我想找到黑暗部分的边缘就像这样(红线就是我要找的):

需要

我尝试了一些方法,但没有一个工作,所以我希望有一个emgu大师愿意帮助我......

方法1

  • 将图像转换为灰度
  • 消除噪音并反转
  • 删除任何不太明亮的东西
  • 得到精灵和多边形

代码(我知道我应该正确处理事情,但我保持代码简短):

var orig = new Image<Bgr, byte>(inFile);

var contours = orig
    .Convert<Gray, byte>()
    .PyrDown()
    .PyrUp()
    .Not()
    .InRange(new Gray(190), new Gray(255))
    .Canny(new Gray(190), new Gray(255))
    .FindContours(CHAIN_APPROX_METHOD.CV_CHAIN_APPROX_SIMPLE,
                  RETR_TYPE.CV_RETR_TREE);

var output = new Image<Gray, byte>(orig.Size);    
for (; contours != null; contours = contours.HNext)
{
    var poly = contours.ApproxPoly(contours.Perimeter*0.05,
                                   contours.Storage);
    output.Draw(poly, new Gray(255), 1);
}
output.Save(outFile);
Run Code Online (Sandbox Code Playgroud)

这是结果:

接近1结果

方法2

  • 将图像转换为灰度
  • 消除噪音并反转
  • 删除任何不太明亮的东西
  • 得到canny然后行

代码:

var orig = new Image<Bgr, byte>(inFile);

var linesegs = orig
    .Convert<Gray, byte>()
    .PyrDown() …
Run Code Online (Sandbox Code Playgroud)

.net c# opencv image-processing emgucv

10
推荐指数
1
解决办法
3951
查看次数

使用opencv和ffmpeg制作视频.如何找到合适的颜色格式?

我有一个用python,opencv和ffmpeg构建的网络摄像头录像机程序

除了视频的颜色比现实更蓝,它才能正常工作.问题似乎来自图像的颜色格式.

似乎OpenCv正在提供BGR图像,而ffmpeg + libx264正在期待YUV420p.我读过YUV420p对应YCbCr.

opencv没有从BGR到YCbCr的转换.它只转换为YCrCb.

我做了一些搜索并尝试了不同的替代方案,尝试将opencv图像转换为ffmpeg + libx264可以正常的东西.没有工作.在这一点上,我有点迷失,我会感谢任何可以帮助我解决这个颜色问题的指针.

python opencv ffmpeg image-processing

10
推荐指数
1
解决办法
5814
查看次数

Xcode 10.3 不适用于 MacOS Big Sur 11.0.1(非测试版)

我试图格式化我的 MacOS,重新下载 Xcode 10.3。它只是不起作用。 在此处输入图片说明

Logs:

Process:               Xcode [22467]
Path:                  /Users/USER/Downloads/Xcode_10.3.app/Contents/MacOS/Xcode
Identifier:            com.apple.dt.Xcode
Version:               10.3 (14492.2)
Build Info:            IDEFrameworks-14492002000000000~2 (10G8)
Code Type:             X86-64 (Native)
Parent Process:        ??? [1]
Responsible:           Xcode [22467]
User ID:               501

PlugIn Path:             /Users/USER/Downloads/Xcode_10.3.app/Contents/Developer/usr/lib/libMainThreadChecker.dylib
PlugIn Identifier:       libMainThreadChecker.dylib
PlugIn Version:          ??? (64492.1)

Date/Time:             2020-11-13 16:52:33.909 +0800
OS Version:            macOS 11.0.1 (20B29)
Report Version:        12
Bridge OS Version:     3.0 (14Y908)
Anonymous UUID:        46BBB97A-6E02-4B36-B8CE-640575A752F0


Time Awake Since Boot: 4500 seconds

System Integrity Protection: enabled

Crashed Thread:        0  Dispatch queue: com.apple.main-thread

Exception …
Run Code Online (Sandbox Code Playgroud)

macos xcode xcode10 macos-big-sur

10
推荐指数
2
解决办法
4727
查看次数