- 博客(31)
- 资源 (11)
- 收藏
- 关注
原创 VC BMP写字方法(绝对好使)
char bmppath[]="1.bmp"; FILE *fp=fopen(bmppath,"rb"); if(fp==0) return ; fseek(fp,sizeof(BITMAPFILEHEADER),0); BITMAPINFOHEADER head; fread(&head,sizeof(BITMAPINFOHEADER),1,fp); int bmpHeight=head.b
2009-08-22 15:00:00 1267 1
原创 halcon目标检测标注保存
image_dir := 'c:/视觉芯/images/'* 类别名称列表和对应的ID列表。* 保存字典到.hdict文件。* 保存类别和ID到字典中。* 创建一个新的字典。
2024-03-28 20:56:14 399
原创 添加图像MFC PDF
if (!image)return;if (!pdf)return;= HPDF_OK)return;if (!page)return;= HPDF_OK)return;
2024-03-27 11:18:56 650
原创 添加表格MFC PDF
if (!font)return;i++)i++)i++)j++)if (!pdf)return;= HPDF_OK)return;if (!page)return;= HPDF_OK)return;
2024-03-27 11:18:16 449
原创 pdf操作
if (!pdf)return;= HPDF_OK)return;if (!page)return;if (!font)return;");= HPDF_OK)return;
2024-03-27 11:17:09 832
原创 相机姿态检测计算cv::solvePnP,图像到世界,世界到图像坐标
/ 估计左相机的旋转和平移矩阵。// 左相机内参矩阵和畸变系数。// 左相机图像坐标。
2024-01-07 21:56:05 488
原创 stereoCalibrate手动简单去标定
std::cout << "立体标定 RMS 误差: " << rms << std::endl;std::cout << "旋转矩阵 (R): " << R << std::endl;std::cout << "平移向量 (T): " << T << std::endl;cv::CALIB_FIX_INTRINSIC // 限制内参不变。// 手动输入的相机内参矩阵和畸变系数(假设没有畸变)// 手动输入的左相机图像坐标。// 手动输入的左相机图像坐标。// 手动输入的右相机图像坐标。
2024-01-04 22:14:31 342
原创 如果你从图像中提取了特征点,例如使用关键点检测算法(如SIFT、SURF、ORB等),并且这些特征点在两个视图中都能够被检测到,你可以使用双目视觉标定的结果将这些特征点映射到世界坐标中。
/ 使用三角测量将像素坐标转换为世界坐标。// 使用暴力匹配寻找匹配的特征点对。// 转换为齐次坐标并获取三维坐标。// 提取匹配点对的像素坐标。// 读取左右摄像头的图像。// 使用ORB特征点检测。// 读取双目标定的结果。
2024-01-03 08:53:30 355
原创 OpenCV进行具有圆形标定板的双目标定:
/ 圆形标定板的行数和列数。// 圆心之间的距离(米)// 保存左右摄像头的图像坐标和对应的世界坐标。// 生成圆形标定板的三维坐标。// 设置圆形标定板的参数。// 读取左右摄像头的图像。// 检测圆形标定板的角点。
2024-01-02 16:11:49 453
原创 双目摄像头测量产品的长度
float disparityValue = disparity.at<float>(/* 物体的垂直中心像素坐标 */, (leftEdgePixel + rightEdgePixel) / 2);std::cout << "物体长度:" << objectLength << " 米" << std::endl;// 假设你已知物体在场景中的位置,可以根据视差图中的像素值计算实际的物体长度。// 例如,假设你知道物体在图像中的左右边缘对应的像素坐标。// 读取左右摄像头的图像。// 计算实际物体长度。
2024-01-02 14:10:02 360
原创 双目标定(Stereo Calibration)是在计算机视觉中用于确定双摄像头系统内外参数的过程。OpenCV库提供了用于双目标定的函数
/ 读取左右摄像头的图像。// 将视差图转换为深度图。// 读取双目标定的结果。
2024-01-02 14:09:19 376
原创 C++,DLL插件实现方式
/ 函数指针类型定义,用于获取插件工厂函数。// 通过释放函数释放插件。// 函数指针类型定义,用于释放插件。// 导出释放插件的函数。// 导出插件工厂函数。
2023-12-28 16:40:15 409 1
原创 以下是一个用MATLAB深度学习工具箱进行图像分类任务的完整示例代码。该示例使用了一个预训练的深度卷积神经网络(CNN)模型来对图像进行分类:
fprintf('测试集准确率: %.2f%%\n', accuracy * 100);% 如果你满意模型的性能,你可以保存模型并部署到不同的应用程序中。% 这里使用MATLAB自带的图像分类数据集。% 你可以加载新图像并使用模型来进行分类。% 步骤3:分割数据集为训练集和测试集。% 步骤8:保存和部署模型(如果需要)% 步骤2:加载预训练的CNN模型。% 步骤7:使用模型进行预测。% 步骤1:加载和准备数据。% 步骤4:定义训练选项。% 释放不再需要的资源。% 步骤5:训练模型。% 步骤6:评估模型。
2023-09-24 18:20:21 109 1
原创 opencv c++方法
#include <opencv2/opencv.hpp>#include <iostream>int main() { cv::Point2f center(100.0f, 100.0f); // 圆的中心坐标 float radius = 50.0f; // 圆的半径 cv::Vec4f line(1.0f, -1.0f, -50.0f, 0.0f); // 直线的一般方程 Ax + By + C = 0 cv::Point2f intersection1, interse
2023-09-22 21:50:40 36
原创 MFC下多线程同时修改成员变量CString报错
在MFC(Microsoft Foundation Classes)中,当多个线程同时尝试修改同一个成员变量,尤其是CString类型的成员变量时,可能会导致线程安全问题和错误。您可以在每个线程中使用互斥锁来控制对共享数据的访问,确保同时只有一个线程可以修改它。由于没有同步机制,一个线程可能在另一个线程正在修改CString的同时读取该字符串,导致数据损坏或错误的结果。多个线程同时写入数据时,可能会发生竞态条件,其中写入操作的顺序无法预测,从而导致结果不一致。在MFC中,您可以使用。
2023-08-21 10:10:16 103 1
原创 以前开发MFC界面如何快速转成QT界面
另外,值得一提的是,如果你的MFC项目已经具有较大的规模和复杂性,可能考虑从头开始使用Qt进行重写会更有效和可维护。将MFC界面快速转换为Qt界面可能需要进行一些手动工作,因为MFC和Qt是两个不同的界面框架,它们具有不同的设计和实现原理。添加功能和逻辑:根据需要,将MFC界面中的功能和逻辑转换为对应的Qt代码。转移资源:将MFC界面中使用的图标、图片和其他资源文件复制到Qt项目中,并在Qt代码中进行相应的调整。进行测试和调试:在完成界面转换后,进行测试和调试以确保界面的功能和外观与原始MFC界面一致。
2023-05-16 19:59:39 1456
原创 韩语或者朝鲜语言;MFC下,unicode读取成功;电脑安装朝鲜语言才可以
String id="MainPage-0-0-J">MESシステム接?成功</String><String id="MainPage-0-0-C">MES系?接成功</String>MFC下,unicode读取成功;电脑安装朝鲜语言才可以。
2023-05-14 20:40:29 86
原创 修改节点保存
int main()if (!loadOkay)return 1;if (!root)return 1;break;return 0;
2023-05-13 23:45:38 31
原创 CString转char[]在unicode下几种方法
在上面的代码中,我们首先调用 CString 的 GetString 方法获取字符指针,然后将指针转换为 const wchar_t* 类型。在上面的代码中,我们使用 ATL/MFC 提供的 CT2A 类型将 CString 转换为 char[] 类型。该类型会在构造函数中自动分配一个 char[] 缓冲区,将转换后的多字节字符复制到该缓冲区中,并在析构函数中释放该缓冲区。在上面的代码中,我们首先创建一个 CStringA 对象,使用 Format 方法将 CString 对象转换为 char[] 类型。
2023-05-10 21:40:09 1086
原创 YOLOv5模型和参数建议
选择适当的模型:YOLOv5提供了多个不同的模型,如yolov5s、yolov5m、yolov5l和yolov5x,每个模型具有不同的大小和性能。对于小规模的缺陷检测任务,可以使用较小的模型,如yolov5s,对于大规模的任务,可以使用较大的模型,如yolov5x。您可以根据您的数据集和任务选择适当的数据增强方法。建议在尝试不同的模型和参数组合之前,对您的数据集进行一些初步分析和探索,并进行交叉验证和调整。预训练模型:如果您的数据集比较小,可以尝试使用在大型数据集上预训练的模型来提高模型的性能。
2023-05-05 17:16:34 1513 1
cximage702-full,unicode lib
2023-05-12
模式识别代码MATLAB,想学习的赶紧了
2010-12-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人