最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

opencv3/C++圖像邊緣提取方式

 更新時間:2019年12月10日 15:13:53   作者:阿卡蒂奧  
今天小編就為大家分享一篇opencv3/C++圖像邊緣提取方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

canny算子實現(xiàn)

使用track bar 調整canny算子參數(shù),提取到合適的圖像邊緣。

#include<iostream>
#include<opencv2/opencv.hpp>
using namespace cv;

void trackBar(int, void*);
int s1=0,s2=0;
Mat src, dst;
int main()
{
 src = imread("E:/image/image/daibola.jpg");
 if(src.empty())
 {
  printf("can not load image \n");
  return -1;
 }
 cvNamedWindow("input", CV_WINDOW_AUTOSIZE);
 imshow("input", src);
 dst = src.clone();
 cvNamedWindow("output", CV_WINDOW_AUTOSIZE);
 createTrackbar("canny1", "output", &s1, 255, trackBar);
 createTrackbar("canny2", "output", &s2, 255, trackBar);
 GaussianBlur(src,src,Size(3,3),0);

 waitKey();
 return 0;
}

void trackBar(int, void*)
{

 Canny(src,dst,s1,s2,3);
 imshow("output", dst);
}

Sobel算子實現(xiàn)

#include<iostream>
#include<opencv2/opencv.hpp>
using namespace cv;

int main()
{
 Mat src, dst;
 src = imread("E:/image/image/daibola.jpg");

 if(src.empty())
 {
  printf("can not load image \n");
  return -1;
 }
 dst = Mat::zeros(src.size(), src.type());
 cvNamedWindow("input", CV_WINDOW_AUTOSIZE);
 imshow("input", src); 

 Mat kernel = (Mat_<int>(2,2)<<0,1,-1,0);
 filter2D(src,dst,-1,kernel,Point(-1,-1),0.0);
 Mat xgrad, ygrad;
 Sobel(src,xgrad,CV_16S,1,0,3);
 Sobel(src,ygrad,CV_16S,0,1,3);
 convertScaleAbs(xgrad,xgrad);
 convertScaleAbs(ygrad,ygrad);

 addWeighted(xgrad,0.5,ygrad,0.5,0,dst);
 //addWeighted(dst,0.5,src,1,0,dst);
 cvNamedWindow("output", CV_WINDOW_AUTOSIZE);
 imshow("output", dst);
 waitKey();
 return 0;
}

以上這篇opencv3/C++圖像邊緣提取方式就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • C語言實現(xiàn)線索二叉樹的前中后創(chuàng)建和遍歷詳解

    C語言實現(xiàn)線索二叉樹的前中后創(chuàng)建和遍歷詳解

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)線索二叉樹的前中后創(chuàng)建和遍歷,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-02-02
  • C++中的ilst使用以及模擬實現(xiàn)

    C++中的ilst使用以及模擬實現(xiàn)

    list是一個類模板,加<類型>實例化才是具體的類,可以在任意位置進行插入和刪除的序列式容器,本文將通過代碼示例給大家介紹一下C++中的ilst使用以及模擬實現(xiàn),需要的朋友可以參考下
    2023-08-08
  • C++實現(xiàn)延遲的方法詳解

    C++實現(xiàn)延遲的方法詳解

    這篇文章主要為大家詳細介紹了C++實現(xiàn)延遲的三個方法,文中的示例代碼講解詳細,對我們深入了解C++有一定的幫助,感興趣的小伙伴可以學習一下
    2022-12-12
  • 圖文詳解c/c++中的多級指針與多維數(shù)組

    圖文詳解c/c++中的多級指針與多維數(shù)組

    多維數(shù)組與多級指針是初學者經(jīng)常感覺迷糊的一個地方。超過二維的數(shù)組和超過二級的指針其實并不多用。但只要掌握一定的方法,理解多級指針和“多維”數(shù)組完全可以像理解一級指針和一維數(shù)組那樣簡單。
    2016-08-08
  • VS2019項目打包生成.exe文件與Setup的步驟實現(xiàn)

    VS2019項目打包生成.exe文件與Setup的步驟實現(xiàn)

    這篇文章主要介紹了VS2019項目打包生成.exe文件與Setup的步驟實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-03-03
  • C語言switch語句和if用法介紹

    C語言switch語句和if用法介紹

    本文詳細講解了C語言switch語句和if用法介紹,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-12-12
  • C++讀取wav文件中的PCM數(shù)據(jù)

    C++讀取wav文件中的PCM數(shù)據(jù)

    這篇文章主要為大家詳細介紹了C++讀取wav文件中的PCM數(shù)據(jù),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • 如何在C語言中提取Shellcode并執(zhí)行

    如何在C語言中提取Shellcode并執(zhí)行

    Shellcode是一種獨立于應用程序的機器代碼,通常用于實現(xiàn)特定任務,如執(zhí)行遠程命令、注入惡意軟件或利用系統(tǒng)漏洞,本文將深入探討如何在C語言中提取Shellcode,并通過XOR加密技術增加其混淆程度,文中通過代碼示例講解的非常詳細,需要的朋友可以參考下
    2023-12-12
  • 數(shù)據(jù)結構 雙機調度問題的實例詳解

    數(shù)據(jù)結構 雙機調度問題的實例詳解

    這篇文章主要介紹了數(shù)據(jù)結構 雙機調度問題的實例詳解的相關資料,雙機調度問題,又稱獨立任務最優(yōu)調度:用兩臺處理機A和B處理n個作業(yè)的實例,需要的朋友可以參考下
    2017-08-08
  • 深入理解Qt 初始項目代碼

    深入理解Qt 初始項目代碼

    本文解析了Qt項目創(chuàng)建后的主要文件,包括main.cpp、mywidget.h、mywidget.cpp、mywidget.ui和.pro,main.cpp這五個文件,具有一定的參考價值,感興趣的可以了解一下
    2025-02-02

最新評論

凉城县| 共和县| 同德县| 伊通| 读书| 仙桃市| 贡觉县| 稻城县| 穆棱市| 丹巴县| 贺兰县| 遂平县| 广西| 远安县| 平邑县| 遵义县| 扶沟县| 阿克苏市| 邵东县| 邵东县| 乌兰浩特市| 安福县| 江安县| 镇平县| 辛集市| 海林市| 永修县| 富源县| 卢龙县| 苗栗县| 始兴县| 扶风县| 梅河口市| 丰镇市| 沙湾县| 通辽市| 三台县| 武鸣县| 宜都市| 健康| 喜德县|