Easyx图形库使用(潜力无限的图像处理)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

图像处理是一个刚需。特别是工业图像处理,有这么几种方法。要么是有能力开发的公司,用opencv开发,或者是一些代理公司,用halcon或者是vision pro进行开发。但是所有的开发,都是需要公司具备一定的开发能力。但是还有一些场景,本身其实可以通过常用的算法,配合光源就可以做到很高的辨识度。这些小应用,其实可以通过easyx+图像算法就可以解决了。

1、通过easyx的api读取数据

前期开发的时候,一般就可以通过单个图像来进行处理。等到后期部署的时候,就可以接入usb camera,或者是网络摄像机进行处理。这是用easyx处理的一般方法。

2、图像处理的一般套路

对于图像处理,通常处理的办法就是灰化、降噪、边缘检测、膨胀、腐蚀、轮廓分割,这些都是套路。即使不用opencv写,自己写一下也不是很难的事情。但是这样做出来的软件就很小,也没有opencv、halcon的限制。

3、参数配置

配置过程中势必涉及到一些参数的设置,那么可以通过InputBox的方法进行参数调试。当然,如果调试的参数比较多,那么可以通过按键+窗口配置的方法,对不同的参数进行调试,这样比单纯的方法调试效率高很多。

4、接入的摄像头

接入的摄像头尽量用常用的摄像头,比如usb摄像头。如果厂家有网络摄像头和对应的SDK,也是可以的。拿不到网络摄像头的SDK,有rtsp地址、支持rtsp协议,这也是可以的。

5、外部第三方的API

还有一些应用是需要外部api支持的,比如某度、某巴巴,这些网络api也可以拓展我们的功能,比如身份证识别、驾驶证识别、车牌识别等等。

6、简单的demo

前面我们做过一个灰度图的案例,这里继续讲一个底片渲染的案例。整体流程差不多,首先是读入图片。读入之后,就是显示。显示完之后,通过GetImageBuffer获取地址,直接对像素数据进行处理。除了处理图片,这里多一个功能,那就是saveimage。

复制代码
#include <graphics.h>
#include <conio.h>

// 底片效果
void ColorInvert(IMAGE *pimg)
{
	// 获取指向显示缓冲区的指针
	DWORD* pMem = GetImageBuffer(pimg);

	// 直接对显示缓冲区赋值
	for (int i = pimg->getwidth() * pimg->getheight() - 1; i >= 0; i--)
	{
		pMem[i] = (~pMem[i]) & 0x00FFFFFF;
	}
}

// 主函数
int main(int argc, char* argv[])
{
	// 初始化绘图环境
	initgraph(512, 512);

	// 获取图像
	IMAGE img;
	loadimage(&img, _T("./lena.png"));

	// 显示原始图像
	putimage(0, 0, &img);

	// 任意键执行
	_getch();

	// 底片效果
	ColorInvert(&img);

	// 显示处理后的图像
	putimage(0, 0, &img);

	// 任意键关闭绘图环境
	_getch();

	// 保存图片
	saveimage(_T("./lena_new.png"), &img);

	closegraph();
	return 0;
}
相关推荐
咋吃都不胖lyh7 小时前
详解 UCB 算法的置信区间与核心逻辑(通俗 + 公式 + 实例)
人工智能·算法·机器学习
造火箭7 小时前
普通手机使用Open-AutoGLM 感受豆包AI 手机的体验
人工智能·智能手机
Mr.Lee jack7 小时前
【torch.compile】PyTorch Dynamo 和 Inductor 编译流程
人工智能·pytorch·深度学习
浮不上来7 小时前
人工兔优化算法(ARO)详解:原理、实现与应用
大数据·人工智能·机器学习·优化算法
Elastic 中国社区官方博客8 小时前
Elastic 在 AWS re:Invent:总结一年在 agentic AI 创新中的合作
大数据·人工智能·elasticsearch·搜索引擎·云计算·全文检索·aws
IvorySQL8 小时前
版本发布| IvorySQL 5.1 发布
数据库·人工智能·postgresql·开源
AI营销资讯站8 小时前
AI营销内容生产新范式,原圈科技多智能体平台赋能全球化出海新机遇
人工智能
free-elcmacom8 小时前
机器学习高阶教程<6>推荐系统高阶修炼手册:混排、多任务与在线学习,解锁精准推荐新境界
人工智能·python·学习·算法·机器学习·机器人
pingao1413788 小时前
气象监测新纪元:多功能自动站如何赋能智慧城市
人工智能·智慧城市
独自归家的兔8 小时前
基于GUI-PLUS 搭配 Java Robot 实现智能桌面操控
java·开发语言·人工智能