error C2061: 语法错误 : 标识符 "newvalue1"
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了error C2061: 语法错误 : 标识符 "newvalue1"相关的知识,希望对你有一定的参考价值。
#include <opencv2/opencv.hpp>
#include<stdlib.h>
#include<time.h>
#include<stdio.h>
#include<windows.h>
using namespace std;
using namespace cv;
int _tmain(int argc, char* argv[])
void TemplateFilter (const Mat &img,Mat &img2,float moad[3][3]);
const char* imagename = "D:\Lena.jpg";
Mat img = imread(imagename);
Mat img2;
if(img.empty())
fprintf(stderr,"Can not load image ^%\n",imagename);
float mode1[3][3]=-1/3,0,-1/3,
-1/3,0,-1/3,
-1/3,0,-1/3;
TemplateFilter(img,img2,mode1);
imshow("蒲瑞维特",img2);
float mode2[3][3]=-1,0,1,
-2,0,2,
-1,0,1;
TemplateFilter(img,img2,mode2);
imshow("imag",img);
imshow("索贝尔算子",img2);
waitKey();
return 0;
void TempplateFilter (const Mat &img,Mat &img2,float moad1[3][3],float moad2[3][3])
img2=Mat::zeros(img.size(),img.type());
for(int y=1;y<img.rows-1;y++)
for(int x=1;x<img.cols-1;x++)
float newvalue1=0,newvalue2=0,newvalue=0;
for(int i=0;i<3;i++)
for(int j=0;j<3;j++)
newvalue+=moad1[i][j]*img.at<uchar>(y+i-1,x+j-1);
newvalue+=moad2[i][j]*img.at<uchar>(y+i-1,x+j-1);
if newvalue1<0;
newvalue1=-newvalue1; //出错处
if newvalue2<0;
newvalue2=-newvalue2;
if newvalue1>newvalue2;
newvalue1=newvalue2;
newvalue1/=3.0f;
if newvalue1>255;
newvalue1=255;
img2.at<uchar>(y,x)=newvalue;
那个问题解决了 新的问题又来了
fatal error LNK1120: 1 个无法解析的外部命令
无法解析的命令是什么?代码有点多,我一个一个语句看不过来,详细的错误提示……
追问能加个qq吗?1026303932 我试着复制详细的错误提示但字太多了复制不上
以上是关于error C2061: 语法错误 : 标识符 "newvalue1"的主要内容,如果未能解决你的问题,请参考以下文章
error C2061: 语法错误 : 标识符 "newvalue1"
调用opencv时,使用Egien工具出现“error C2061: 语法错误: 标识符“Matrix””和“error C2653: “Eigen”:不是类或命名空间名称”该如何解决?
RapidJson:错误 C2061:语法错误:标识符“stack_”