头发重建论文复现

头发重建论文复现

    简介

    准备把一篇头发重建的论文中的代码跑起来,这篇文章主要用于记录跑这篇论文代码时出现的坑和解决过程。
    论文链接:Data-driven 3D human head reconstruction

    准备过程

    解决缺失的运行环境

    运行环境

    代码中使用的是python2和C++

    操作系统

    突然发现这是运行在linux系统下的代码,而且该代码对于性能(GPU)较高,准备在我台式机上装双系统(windows11+Ubuntu 20.04 x64)

    装双系统

    通过下面这个链接的教程装好了。
    装了5次Ubuntu,告诉你win10+Ubuntu双系统的正确打开方式

    ubuntu配置

    amd 显卡驱动设置
    Radeon™ Software for Linux® 20.45 Release Notes

    解决python2环境问题

    准备换成python3.9
    python3.9环境过新,dlib需要自己编译,考虑换成python3.6

    用python自带的脚本2to3.py对所有文件进行转换
    准备使用pycharm作为IDE。

    pickle

    pickle默认用ascii编码保存东西,但是由于python2与python3对于字符串默认编码不同,导致读取会报UnicodeDecodeError错误。
    解决方案:使用encoding='latin1'或 encoding=‘bytes’
    dd = pickle.load(open(fname_or_dict,'rb'))
    to
    dd = pickle.load(open(fname_or_dict,'rb'),encoding='latin1')

    meshlab

    2022-07-29-21-57-36------

    MeshLab 是一个开源、可移植和可扩展的三维几何处理系统,主要用于交互处理和非结构化编辑三维三角形网格。该系统发布于2005年年底,旨在提供一整套三维扫描、 编辑、 清洗、 拼合、 检查、 呈现和转换网格数据的工具。

    meshlab提示找不到,尝试在ubuntu下编译meshlab。下面链接是官方编译教程。
    meshlab/src/
    ubuntu 下需要安装qt、opengl
    经师兄指点,只需要在windows下编译,开始尝试。
    QT配置MSVC还需要安装WindowsSDK Qt配置使用MSVC编译器

    pyigl

    QQ--20220729100857
    发现装了pyigl缺了很多函数,考虑去官网编译,然后直接添加到python程序路径里
    编译过程中,是官网最新的版本会在使用cmake阶段去动态git clone 依赖库,我这里尝试了许多次都无法clone,下面链接提供了一个带所有依赖项的版本。
    LIBIGL+CGAL+VS2019在win10上配置使用记录