8000 GitHub - tsun9012/wavelet-opencv: 使用opencv,实现图像的小波分解、重构,小波降噪和模极大值边缘检测
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

tsun9012/wavelet-opencv

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

wavelet-opencv

使用opencv,实现图像的小波分解、重构,小波降噪和模极大值边缘检测。

haar小波自动阈值降噪,分解层数为3

my_wavelet::Wavelet wavelet;
cv::Mat srcGray = cv::imread("D:\\pictures\\crack.jpg", 0);
if (srcGray.empty()) {
	return -1;
}
std::vector<cv::Mat> decMats;
std::vector<cv::Size> decMatsWH;
wavelet.wavedec2d(srcGray, 3, my_wavelet::wdb1, decMats, decMatsWH);
wavelet.waveautoden(decMats);
cv::Mat recMat;
wavelet.waverec2d(my_wavelet::wdb1, decMats, decMatsWH,recMat);

原图

降噪图

小波模极大值边缘检测

cv::Mat edge;
wavelet.waveedge(srcGray, 2, 0.03, edge);
tick.stop();
std::cout << "Time: " << tick.getTimeMilli() << std::endl;
cv::Mat blurImg;
cv::GaussianBlur(srcGray, blurImg, cv::Size(5, 5), 0, 0);
cv::Mat cannyEdge;
cv::Canny(blurImg, cannyEdge, 30, 60);

模极大值边缘检测

canny边缘检测

About

使用opencv,实现图像的小波分解、重构,小波降噪和模极大值边缘检测

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

0