1.建立project后,打开view的solution explorer,在source Files里创建新的cpp文档
2在source.cpp里输入下列代码
```cpp
#include <opencv2/opencv.hpp>
#include <opencv2/highgui/highgui_c.h>
#include <opencv2/highgui/highgui.hpp>
#include <iostream>
using namespace cv;
using namespace std;
int main()
{
Mat src, binary_src, edge_src, dst;
src = imread("D:\\xiaomei\\yangge\\cicle8%damage20210618.tif", IMREAD_GRAYSCALE);
if (src.empty()) {
cout << "Error" << endl;
}
GaussianBlur(src, src, Size(3, 3), 0, 0);
cvtColor(src, src, CV_BGR2GRAY);
0. Hough lines
bitwise_not(src, src);
//Canny(src, dst, 50, 50 * 2, 3, false);
//threshold(src, binary_src, 50, 255, THRESH_BINARY_INV);
//namedWindow("Laplacian", CV_WINDOW_NORMAL);
//resizeWindow("Laplacian", 800, 600);
//Laplacian(src, edge_src, CV_16S, 3);
//convertScaleAbs(edge_src, dst);
//threshold(dst, dst, 40, 255, THRESH_OTSU | THRESH_BINARY);
//imshow("Laplacian", src);
cout << src.size() << endl;
/*vector<Vec4i> plines;
HoughLinesP(dst, plines, 1, CV_PI / 180.0, 80, 40, 3);
Scalar color = Scalar(255, 0, 255);
for (size_t i = 0; i < plines.size(); i++)
{
Vec4f hline = plines[i];
line(src, Point(hline[0], hline[1]), Point(hline[2], hline[3]), color, 20, CV_AA);
}
*/
//imwrite("D:/sjtu/Mg-Ca/MgCaData/threshold_Hough20210611.png", src);
1. get Morphological gradient
//Mat kernel = getStructuringElement(MORPH_RECT, Size(9, 9), Point(-1, -1));
//morphologyEx(src, dst, CV_MOP_GRADIENT, kernel);
//namedWindow("gradient", CV_WINDOW_NORMAL);
//resizeWindow("gradient", 800, 600);
//imshow("gradient", dst);
imwrite("D:/sjtu/Mg-Ca/MgCaData/gradient20210610.png", dst); // \代表转义
2. convert to binary
//threshold(dst, dst, 40, 255, THRESH_BINARY | THRESH_OTSU);
//namedWindow("binary", CV_WINDOW_NORMAL);
//resizeWindow("binary", 800, 600);
//imshow("binary", dst);
3. median blur to eliminate noise
//medianBlur(dst, dst, 7);
4. dilate //dilate should be after median blur
//Mat struc = getStructuringElement(MORPH_RECT, Size(3, 3), Point(-1, -1));
//dilate(dst, dst, struc);
//namedWindow("dilate", CV_WINDOW_NORMAL);
//resizeWindow("dilate", 800, 600);
//imshow("dilate", dst);
waitKey(0);
return 0;
}
- 右击project,选中properties。在VC++ Directories中的include Directories添加目录:E:\opencv20210519\opencv\build\include; E:\opencv20210519\opencv\build\include\opencv2。在Library Directories添加E:\opencv20210519\opencv\build\x64/vc15\lib,E:\opencv20210519\opencv\build\x64/vc15。
- 在Linker input中输入opencv_world452d.lib
- 把x86改为x64(代表64位操作系统),然后点击Local Windows Debugger。
``