基于深度模型的印章检测(c++)

效果展示:

有点:

(1)快速(几十毫秒级别);

(2)精度高;

int main()
{
	std::string imagePath;

	// 提示用户输入图像路径
	std::cout << "请输入图像路径: ";
	std::getline(std::cin, imagePath); // 使用getline以支持路径中的空格

	// 读取图像
	Mat src = imread(imagePath);


	if (src.empty())
	{
		printf("can not open ...\n");
		system("pause");
		return 0;
	}
	vector<cv::Rect> sealRects;
	SealDetect(src, sealRects);

	int thickness = std::max(2, std::min(src.cols, src.rows) / 300); // 线条粗细为图像最小边长的 1/100
	for(int i = 0; i < sealRects.size(); i++)
		rectangle(src, sealRects[i], Scalar(0, 255, 0), thickness, LINE_8, 0);

	imwrite("result.jpg", src);
	int screenWidth = GetSystemMetrics(SM_CXSCREEN)/3;
	int screenHeight = GetSystemMetrics(SM_CYSCREEN)/3;

	// 计算缩放比例
	double scale = std::min(static_cast<double>(screenWidth) / src.cols, static_cast<double>(screenHeight) / src.rows);

	// 计算新的图像大小
	Size newSize(static_cast<int>(src.cols * scale), static_cast<int>(src.rows * scale));

	// 调整图像大小
	Mat resizedImage;
	resize(src, resizedImage, newSize);

	// 显示调整后的图像
	imshow("Seal Detection", resizedImage);
	waitKey(0); // 等待用户按键

	system("pause");
	return 1;
}

可以加q号沟通690899868

程序下载:

https://download.youkuaiyun.com/download/MyLove_VC/90238649?spm=1001.2014.3001.5501

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值