91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 7.13MB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2023-11-02
  • 語(yǔ)言: C/C++
  • 標(biāo)簽: opencv??prewitt??

資源簡(jiǎn)介

opencv3.3 prewitt算子邊緣檢測(cè)c++代碼實(shí)現(xiàn),具有很好的檢測(cè)效果

資源截圖

代碼片段和文件信息

//?PrewittEdgeDetectProgram.cpp?:?定義控制臺(tái)應(yīng)用程序的入口點(diǎn)。
//

#include?“stdafx.h“
#include?
#include?
#include?
#include?

using?namespace?std;
using?namespace?cv;

void?conv2D(InputArray?src?InputArray?kernel?OutputArray?dst?int?ddepth?Point?anchor?=?Point(-1?-1)?int?borderType?=?BORDER_DEFAULT)
{
//卷積運(yùn)算卷積核逆時(shí)針旋轉(zhuǎn)180度
Mat?kernelFlip;
flip(kernel?kernelFlip?-1);
//卷積運(yùn)算第二步
filter2D(src?dst?ddepth?kernelFlip?anchor?0.0?borderType);
}

//可分離的離散二維卷積,先進(jìn)行垂直方向的卷積,然后進(jìn)行水平方向的卷積
void?sepConv2D_Y_X(InputArray?src?OutputArray?src_kerY_kerX?int?ddepth
InputArray?kernelY?InputArray?kernelX?Point?anchor?=?Point(-1?-1)?int?borderType?=?BORDER_DEFAULT)
{
//輸入矩陣與垂直方向上的卷積核進(jìn)行卷積運(yùn)算
Mat?src_kerY;
conv2D(src?kernelY?src_kerY?ddepth?anchor?borderType);
//上面的得到的卷積結(jié)果,接著和水平方向上的卷積核進(jìn)行卷積運(yùn)算
conv2D(src_kerY?kernelX?src_kerY_kerX?ddepth?anchor?borderType);
}

//可分離的離散二位卷積,先進(jìn)行水平方向的卷積,然后進(jìn)行垂直方向的卷積
void?sepConv2D_X_Y(InputArray?src?OutputArray?src_KerX_kerY?int?ddpeth
InputArray?KernelX?InputArray?KernelY?Point?anchor?=?Point(-1?-1)?int?borderType?=?BORDER_DEFAULT)
{
//輸入矩陣與水平方向上的卷積核卷積
Mat?src_kerX;
conv2D(src?KernelX?src_kerX?ddpeth?anchor?borderType);
//上面的結(jié)果和垂直方向上的卷積核卷積,得到輸出結(jié)果
conv2D(src_kerX?KernelY?src_KerX_kerY?ddpeth?anchor?borderType);
}

void?prewitt(InputArray?src?OutputArray?dst?int?ddepth?int?x?int?y?=?0?int?borderType?=?BORDER_DEFAULT)
{
CV_Assert(!(x?==?0?&&?y?==?0));
//如果x不等于0src和prewitt_x卷積核卷積
if?(x!=0&&y==0)
{
//可分離的prewitt_x卷積核
Mat?prewitt_x_y?=?(Mat_(3?1)?< Mat?prewitt_x_x?=?(Mat_(1?3)?< //可分離的離散的二維卷積
sepConv2D_Y_X(src?dst?ddepth?prewitt_x_y?prewitt_x_x?Point(-1?-1)?borderType);
}
//如果x等于0且y不等于0,src和prewitt_y卷積核卷積運(yùn)算
if?(y!=0&&x==0)
{
//可分離的prewitt_y卷積核
Mat?prewitt_y_x?=?(Mat_(1?3)?< Mat?prewitt_y_y?=?(Mat_(3?1)?< //可分離的離散二維卷積
sepConv2D_X_Y(src?dst?ddepth?prewitt_y_x?prewitt_y_y?Point(-1?-1)?borderType);
}

}

int?main()
{
Mat?srcImage;
srcImage?=?imread(“0.jpg“?0);?
if?(!srcImage.data)
{
cout?< return?-1;
}
//圖像矩陣和prewitt_x卷積核卷積
Mat?img_prewitt_x;
prewitt(srcImage?img_prewitt_x?CV_32FC1?1?0);
//圖像矩陣與prewitt_y卷積核卷積
Mat?img_prewitt_y;
prewitt(srcImage?img_prewitt_y?CV_32FC1?0?1);
//數(shù)據(jù)類型轉(zhuǎn)換,邊緣強(qiáng)度的灰度級(jí)顯示
Mat?abs_img_prewitt_x?abs_img_prewitt_y;
convertScaleAbs(img_prewitt_x?abs_img_prewitt_x?1?0);
convertScaleAbs(img_prewitt_y?abs_img_prewitt_y?1?0);
imshow(“垂直方向的邊緣“?abs_img_prewitt_x);
imshow(“水平方向的邊緣“?abs_img_prewitt_y);
imwrite(“edge_Y.bmp“?abs_img_prewitt_x);
imwrite(“edge_X.bmp“?abs_img_prewitt_y);
//平方根方式求出邊緣強(qiáng)度
Mat?img_prewitt_x2?img_prewitt_y2;
pow(img_prewitt_x?2.0?img_prewitt_x2);
pow(img_prewitt_y?2.0?img_prewitt_y2);
Mat?edge;
sqrt

?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----

????..A..H.?????27648??2018-08-07?10:42??PrewittEdgeDetectProgram\.vs\PrewittEdgeDetectProgram\v14\.suo

?????文件????3997696??2018-08-04?14:51??PrewittEdgeDetectProgram\ipch\PREWITTEDGEDETECTPROGRAM-ed947e59\PREWITTEDGEDETECTPROGRAM-4f97f0df.ipch

?????文件????3538944??2018-08-04?14:46??PrewittEdgeDetectProgram\ipch\PREWITTEDGEDETECTPROGRAM-ed947e59\PREWITTEDGEDETECTPROGRAM-7c83cb41.ipch

?????文件?????111446??2018-08-07?10:38??PrewittEdgeDetectProgram\PrewittEdgeDetectProgram\0.jpg

?????文件?????540726??2018-08-07?10:39??PrewittEdgeDetectProgram\PrewittEdgeDetectProgram\edge.bmp

?????文件?????540726??2018-08-07?10:39??PrewittEdgeDetectProgram\PrewittEdgeDetectProgram\edge_X.bmp

?????文件?????540726??2018-08-07?10:39??PrewittEdgeDetectProgram\PrewittEdgeDetectProgram\edge_Y.bmp

?????文件???????3515??2018-08-07?10:39??PrewittEdgeDetectProgram\PrewittEdgeDetectProgram\PrewittEdgeDetectProgram.cpp

?????文件???????8701??2018-08-04?15:03??PrewittEdgeDetectProgram\PrewittEdgeDetectProgram\PrewittEdgeDetectProgram.vcxproj

?????文件???????1331??2018-08-04?14:46??PrewittEdgeDetectProgram\PrewittEdgeDetectProgram\PrewittEdgeDetectProgram.vcxproj.filters

?????文件???????1629??2018-08-04?14:46??PrewittEdgeDetectProgram\PrewittEdgeDetectProgram\ReadMe.txt

?????文件????????228??2018-08-04?14:46??PrewittEdgeDetectProgram\PrewittEdgeDetectProgram\stdafx.cpp

?????文件????????234??2018-08-04?14:46??PrewittEdgeDetectProgram\PrewittEdgeDetectProgram\stdafx.h

?????文件????????240??2018-08-04?14:46??PrewittEdgeDetectProgram\PrewittEdgeDetectProgram\targetver.h

?????文件???????2414??2018-08-07?10:39??PrewittEdgeDetectProgram\PrewittEdgeDetectProgram\x64\Debug\PrewittE.93AACFF6.tlog\CL.command.1.tlog

?????文件??????34586??2018-08-07?10:39??PrewittEdgeDetectProgram\PrewittEdgeDetectProgram\x64\Debug\PrewittE.93AACFF6.tlog\CL.read.1.tlog

?????文件???????2460??2018-08-07?10:39??PrewittEdgeDetectProgram\PrewittEdgeDetectProgram\x64\Debug\PrewittE.93AACFF6.tlog\CL.write.1.tlog

?????文件???????2224??2018-08-07?10:39??PrewittEdgeDetectProgram\PrewittEdgeDetectProgram\x64\Debug\PrewittE.93AACFF6.tlog\link.command.1.tlog

?????文件???????3910??2018-08-07?10:39??PrewittEdgeDetectProgram\PrewittEdgeDetectProgram\x64\Debug\PrewittE.93AACFF6.tlog\link.read.1.tlog

?????文件???????1326??2018-08-07?10:39??PrewittEdgeDetectProgram\PrewittEdgeDetectProgram\x64\Debug\PrewittE.93AACFF6.tlog\link.write.1.tlog

?????文件????????250??2018-08-07?10:39??PrewittEdgeDetectProgram\PrewittEdgeDetectProgram\x64\Debug\PrewittE.93AACFF6.tlog\PrewittEdgeDetectProgram.lastbuildstate

?????文件????????374??2018-08-07?10:39??PrewittEdgeDetectProgram\PrewittEdgeDetectProgram\x64\Debug\PrewittEdgeDetectProgram.log

?????文件?????682860??2018-08-07?10:39??PrewittEdgeDetectProgram\PrewittEdgeDetectProgram\x64\Debug\PrewittEdgeDetectProgram.obj

?????文件????3473408??2018-08-04?17:09??PrewittEdgeDetectProgram\PrewittEdgeDetectProgram\x64\Debug\PrewittEdgeDetectProgram.pch

?????文件??????12315??2018-08-04?17:09??PrewittEdgeDetectProgram\PrewittEdgeDetectProgram\x64\Debug\stdafx.obj

?????文件????1166336??2018-08-07?10:39??PrewittEdgeDetectProgram\PrewittEdgeDetectProgram\x64\Debug\vc140.idb

?????文件????2265088??2018-08-07?10:39??PrewittEdgeDetectProgram\PrewittEdgeDetectProgram\x64\Debug\vc140.pdb

?????文件???????1354??2018-08-04?14:46??PrewittEdgeDetectProgram\PrewittEdgeDetectProgram.sln

?????文件???16429056??2018-08-07?10:42??PrewittEdgeDetectProgram\PrewittEdgeDetectProgram.VC.db

?????文件?????162816??2018-08-07?10:39??PrewittEdgeDetectProgram\x64\Debug\PrewittEdgeDetectProgram.exe

............此處省略17個(gè)文件信息

評(píng)論

共有 條評(píng)論