【计算机视觉】(三)FashionAI代码复现碰到的问题和坎坷

这里选择复现的是第17名的代码,

原github地址

https://github.com/gathierry/FashionAI-KeyPointsDetectionOfApparel

数据下载地址:

注意点:

因为现在网上可以下载的数据和比赛时的数据不太一样,没有原来那么全了,所以代码需要修改的还挺多的

修改一:

cuda out of memory了,果然图片训练都是高配玩家玩的。。。。他大爷的

3DGS (Three-Dimensional Geometry Solver)通常指的是维几何求解器,它是一个用于处理和解决维空间几何问题的工具或算法,常见于计算机图形学、机械工程、CAD软件等领域。C++是一种强大的编程语言,非常适合编写这类需要高度性能和精确计算的应用。 在C++中复现3DGS代码,你需要理解以下几个关键点: 1. **向量和矩阵数据结构**:使用`std::vector`或自定义数组来存储维坐标点、向量和矩阵。 2. **几何运算库**:如`Eigen`等库,提供高效的线性代数操作,包括点线距离、面面交、体积计算等。 3. **空间搜索算法**:如A*寻路算法,可以用于查找最短路径或碰撞检测。 4. **交割检测**:通过比较模型边缘或表面的法线,检查是否相交。 5. **递归和迭代**:对于复杂的几何形状,可能需要递归地拆分并解决子问题。 下面是一个简化的示例代码片段,展示如何创建一个基本的3D点和向量类: ```cpp #include <iostream> #include <Eigen/Dense> class Point3D { public: double x, y, z; Point3D(double x = 0, double y = 0, double z = 0) : x(x), y(y), z(z) {} }; class Vector3D { public: double x, y, z; Vector3D(double x = 0, double y = 0, double z = 0) : x(x), y(y), z(z) {} // 添加向量运算函数... }; // 简化版的交割检测函数 bool Intersect(const Point3D& p1, const Vector3D& v1, const Point3D& p2, const Vector3D& v2) { // 实现几何运算... } int main() { Point3D A(0, 0, 0); Point3D B(1, 0, 0); Vector3D AB(B - A); std::cout << "Is there an intersection? " << (Intersect(A, AB, B, Vector3D()) ? "Yes" : "No") << std::endl; return 0; } ```
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值