- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 Visual Studio 2015 社区中有一个项目。它编译没有任何错误,但我在 compute_edge_map_via_lab 和 compute_local_minima 下得到一条绿色波浪线,上面写着未找到“compute_edge_map_via_lab”的函数定义。我可以右键单击调用 compute_edge_map_via_lab 的行,然后单击“转到定义”,它甚至将我带到 cpp 文件中的定义,这意味着 visual studio 知道函数的定义位置。所以我不明白这个绿色错误。谁能帮我解决这个问题?
我已经粘贴了 compute_edge_map_via_lab 的函数和显示错误的图像。
#include <boost/heap/fibonacci_heap.hpp>
#include <boost/graph/adjacency_list.hpp>
#include <boost/graph/iteration_macros.hpp>
#include <opencv2/opencv.hpp>
#include <iostream>
#include <unordered_set>
#include "image-processing.h"
int main {
cv::Mat image = imread("0001.jpg", CV_LOAD_IMAGE_COLOR);
//compute edge map
cv::Mat magnitude;
compute_edge_map_via_lab(image, magnitude);
//compute local minimas
cv::Mat markers;
compute_local_minima(magnitude, markers);
}
图像处理.h
#pragma once
#include <opencv2/opencv.hpp>
void compute_edge_map_via_lab(cv::Mat image, cv::Mat edge_map);
void compute_local_minima(cv::Mat magnitude, cv::Mat markers);
图像处理.cpp
#include "image-processing.h"
void compute_edge_map_via_lab(cv::Mat image, cv::Mat edge_map) {
int rows = image.rows;
int cols = image.cols;
//convert bgr to lab
cv::Mat image_lab;
cv::cvtColor(image, image_lab, CV_BGR2Lab);
//split lab
std::vector<cv::Mat> image_lab_split(3);
cv::split(image_lab, image_lab_split);
//run sobel x and y on lab sets
std::vector<cv::Mat> image_lab_split_dx(3), image_lab_split_dy(3);
for (int i = 0; i < 3; i++)
{
cv::Sobel(image_lab_split[i], image_lab_split_dx[i], CV_32FC1, 1, 0, 3);
cv::Sobel(image_lab_split[i], image_lab_split_dy[i], CV_32FC1, 0, 1, 3);
}
//-----------------------------------------------------------------------------
//compute magnitude = term_a + term_b
// = sqrt(Lx^2 + Ly^2) + sqrt(2(ax^2 + ay^2 + bx^2 + by^2))
//-----------------------------------------------------------------------------
//compute sqrt(Lx^2 + Ly^2)
cv::Mat Lx_squared = cv::Mat(cv::Size(cols, rows), CV_32FC1),
Ly_squared = cv::Mat(cv::Size(cols, rows), CV_32FC1);
cv::pow(image_lab_split_dx[0], 2, Lx_squared);
cv::pow(image_lab_split_dy[0], 2, Ly_squared);
//compute term_a
cv::Mat term_a = cv::Mat(cv::Size(cols, rows), CV_32FC1);
term_a = Lx_squared + Ly_squared;
cv::sqrt(term_a, term_a);
//compute sqrt(2(ax^2 + ay^2 + bx^2 + by^2))
cv::Mat ax_squared = cv::Mat(cv::Size(cols, rows), CV_32FC1),
ay_squared = cv::Mat(cv::Size(cols, rows), CV_32FC1),
bx_squared = cv::Mat(cv::Size(cols, rows), CV_32FC1),
by_squared = cv::Mat(cv::Size(cols, rows), CV_32FC1);
cv::pow(image_lab_split_dx[1], 2, ax_squared);
cv::pow(image_lab_split_dy[1], 2, ay_squared);
cv::pow(image_lab_split_dx[2], 2, bx_squared);
cv::pow(image_lab_split_dy[2], 2, by_squared);
//compute term_b
cv::Mat term_b = 2 * (ax_squared + ay_squared + bx_squared + by_squared);
cv::sqrt(term_b, term_b);
//compute magnitude
edge_map = term_a + term_b;
}
void compute_local_minima(cv::Mat magnitude, cv::Mat markers) {
}
最佳答案
就 C++ 标准而言,这无关紧要:只要函数未被调用,您就可以在没有定义的情况下声明函数原型(prototype)。
在 C++11 之前的过去,这甚至被利用了:例如引入默认构造函数原型(prototype)以抑制不需要的构造。
智能感知很难发现此类情况 - 突出显示它们也许是件好事。 (顺便说一下,intellisense 使用与实际编译器不同的词法分析器!)
关于c++ - Visual Studio 2015 社区 - 未找到函数定义但可以编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42039561/
如何使用 Facebook API 查找 Facebook 网址是社区网址或个人资料网址 例如 http://www.facebook.com/adelphi.panthers http://www.
我正在寻找 Erlang 问答平台/社区进行讨论和澄清。我现在使用 StackOverflow 和 erlangforums.com。两个社区都很棒。有没有其他的问答平台? 我检查了以下维护 Erla
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 4 年前。 Improve this qu
我可以使用下面的代码来生成和绘制社区: wc <- walktrap.community(subgraph) modularity(wc) membership(wc) layout <-la
我对 Chef 有点陌生,并且已经完成了教程,但我开始认为我不是错的人: 我正在尝试在 CentOS 7.2 上安装 Java。它无法安装(显然) - 但将 tarball 提取到正确的位置,但添加了
我做了很多 XSLT 编程。我也做 Java、PL/SQL、JavaScript 和其他一些。我可以通过网络轻松找到 Java 和 JavaScript 程序员社区。 PL/SQL 稍微难一点,但介于
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 7 年前。 Improve this qu
我想了解带有实际信息的 python 资源 - 新闻、文章、论坛(英语/美国 - 讲)。我现在学习了python(我已经有很好的c/c++知识),我需要的不仅仅是官方文档/教程。我想了解Python编
我需要了解 Postgresql。我正在尝试分支一个依赖于 Oracle 的应用程序框架来使用 Postgresql。我可以通过网络轻松找到 Java 和 JavaScript 程序员社区。 Orac
我正在使用 AgGrid 社区版本和 React。我试图在标题中的每一列上显示一个复选框。选择时应突出显示所选列下的单元格。此外,我需要记录所选列的更改。 我的columnDefs是基于后端数据构建的
有点好奇实际上有多少人使用 C++/CLI?那么有多少人在使用它呢?人们是否只在托管环境下寻找程序员的特定工作?围绕 c++/cli 的社区有多大?从我目前看到的情况来看,有不少语法变化,作为 C++
我在 Odoov9 社区模块上有一个选择字段 但是,每次我点击它,选择一个记录时,它都会抛出这个错误: Error: No conversion for undefined http://localh
我在cashflow_report模型上有这个方法: class cashflow_report(models.Model): _name = 'cashflow.report' _d
我正在尝试通过模块将一个表中的字段添加到另一个表中。 具体来说,尝试从 product.product 继承一个字段,即 price 字段,将其添加到 stock.move 模型中。 所以,我在我正在
我继承了 res.partner 模型,现在,我想将 vat 字段设置为 required 和 unique . 我知道如何正常执行此操作,例如在新模型上,但我希望原始字段具有这些属性。 我怎样才能实
我需要做什么才能让 Idea 在未打开的文件中发现错误? 两个示例场景可以更好地了解我的想法: 使用现有源添加新模块。模块已加载,后台扫描任务已完成,所有文件看起来都很好。直到打开。 Idea 会将文
我注意到 Stack Overflow 上有一些类似的问题,但它们要么不是我想要做的,要么是过时的答案。 我是 Google Plus 社区的所有者,我希望将该社区嵌入我们的网站,类似于将 Twitt
所以我将我的 Steamworks SDK 导入到我的虚幻引擎项目中。它构建并运行时,我得到了 Steam 覆盖。太棒了! 但是,我现在正在尝试获取用户的好友列表,这需要 Steam Communit
关闭。这个问题是opinion-based .它目前不接受答案。 想要改进这个问题? 更新问题,以便 editing this post 可以用事实和引用来回答它. 关闭 1 年前。 Improve
我正在 Pycharm Community Edition 2017.2.3 中开发 Python 3.6 项目。 我的项目中有多个运行配置。每个不同的运行配置将打开不同的 'Run tool win
我是一名优秀的程序员,十分优秀!