zeyou
V2EX  ›  互联网

请帮忙看看这个用什么技术实现的

  •  
  •   zeyou · Mar 26, 2020 · 3636 views
    This topic created in 2418 days ago, the information mentioned may be changed or developed.

    在线定制衣服和杯子等商品,前端上传图片,后台生成合成图片,请问如何根据前端上传的图片来贴在衣服和杯子等商品的对应位置。比如前端传一张长方形的图片,贴在杯子表面,生成合成的图片给用户看,如何实现。

    19 replies  •  2020-03-26 19:23:49 +08:00
    momocraft
    momocraft
    Mar 26, 2020
    1
    opengl 或其封装 总之是计算机图形学
    fancy111
    fancy111
    Mar 26, 2020
    2
    图像识别加图像合成。 算法相关。
    lower
    lower
    Mar 26, 2020
    3
    web gl
    zeyou
    zeyou
    OP
    Mar 26, 2020
    4
    我目前想法是通过 3D 模型,uv 贴图。应该有更简单的方式。
    paulee
    paulee
    Mar 26, 2020
    5
    既然是在线定制,为何不直接让用户选择在哪里添加文字 /图片呢(这样就只是前端实现一下就好了)?如果只是想要体现「智能」,那还是老老实实研究图像识别吧...
    Mithril
    Mithril
    Mar 26, 2020
    6
    简单的话
    衣服你展平了拍个正面,直接把图对应位置叠上去就好了。
    杯子的话如果不是想做个能交互旋转的 3D 杯子,基本也是拍个素色的杯子,然后把图变形了叠上去
    这就只是个简单的图像处理而已,用不着图形学。虽然原理都是一样数学吧,不过不用这么麻烦。
    zeyou
    zeyou
    OP
    Mar 26, 2020
    7
    @paulee 你说的这些功能已经做了,问题是如何贴到对应的位置?
    zeyou
    zeyou
    OP
    Mar 26, 2020
    8
    @Mithril 衣服有正面的,还有穿在身上的,还有挂着的。不同的杯子,弧度不一样,需要展示正面,两边的侧面给用户看。
    Mithril
    Mithril
    Mar 26, 2020
    9
    只要角度是固定的基本都没问题。只是看着不太真实而已,不过作为展示一般都够了。
    你需要给不同角度的底图调好对应参数,拿到用户的图做个变换直接贴上去就完了。
    zeyou
    zeyou
    OP
    Mar 26, 2020
    10
    @Mithril 有些图是模特穿身上拍的,这时候没办法调参数吧
    Mithril
    Mithril
    Mar 26, 2020
    11
    @zeyou 褶皱啥的做不出来,不过做个大概效果也还是可以的。
    你不可能做出完美的试穿效果的。
    loading
    loading
    Mar 26, 2020 via Android
    12
    既然可穷尽,那就是体力活了。
    coderluan
    coderluan
    Mar 26, 2020
    13
    固定视角的,把图像分解了,然后不同部分别做 opencv 映射变换。自由旋转的,用 3D 模型贴图。这些都简单。困难的是需要图像真实的,比如必须需要真人模特,不能 3D 模特,这个就得用机器学习了,建议直接放弃,能做倒是能做,但是成本太高也就失去意义了。
    ironMan1995
    ironMan1995
    Mar 26, 2020 via Android
    14
    能不能让前端用 canvas 合成图片再传给后端
    LucasW
    LucasW
    Mar 26, 2020
    15
    最近在做类似的产品,分享下:
    LucasW
    LucasW
    Mar 26, 2020
    16
    1 、放弃后端合成,这几年前端的图形处理能力远超后端;
    2 、如果是 2D 显示,可选方案有 Canvas 和 SVG,如果 3D 有 WebGL 或直接游戏引擎,现在的游戏引擎很在 Web 上已经很强大;
    3 、我的方案的是商品背景、几遍外部结构用 SVG,因为可以无损放大,从线上设计到后端制作可以做到随意生成对应大小。图案、文字直接用 Vue 写成 Html 结构,然后设计完成提交的时候 html2canvas 合成,嵌入到 SVG 中。
    paulee
    paulee
    Mar 26, 2020
    17
    若是不能通过简单的位移加变换手动把图像 PS 上去的话;就只能 2D 转 3D,通过多图片去建立 3D 模型,难度就要高很多了
    lhx880619
    lhx880619
    Mar 26, 2020 via Android
    18
    我做过定制被子生成 3d 的主要是贴图
    lhx880619
    lhx880619
    Mar 26, 2020 via Android
    19
    webgl 算个 uv 的事儿 不算太难
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1406 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 39ms · UTC 05:00 · PVG 13:00 · LAX 21:00 · JFK 00:00
    ♥ Do have faith in what you're doing.