gpt4 book ai didi

android - 触摸点区域时扭曲图像区域?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:31:05 26 4
gpt4 key购买 nike

我需要一个关于如何在触摸特定区域时扭曲图像的基本概念。图像滤镜对整个图像应用扭曲,但我想扭曲单个点,就像如果我想扭曲一个人的眼睛,那么我会触及那个点。所以我需要对这项工作有一个基本的了解。

我试过这个,但它也会对整个图像应用滤镜。 https://github.com/Jtfinlay/PhotoWarp

应用: https://play.google.com/store/apps/details?id=hu.tonuzaba.android&hl=en

最佳答案

扭曲不仅仅是在“单点”,而是在您以平滑方式变形的某个区域。

为此,您需要在触摸点的某个邻域内对坐标进行几何变换。一种方法是在图像上应用正方形网格,并根据您的一些法则在触摸点周围移动网格节点(例如,将位移矢量应用于所有节点,并使用衰减因子使得远处的节点不会'移动)。

然后您需要一个重采样函数来计算每个像素的新坐标并复制源像素的颜色。

为了获得好的结果,您实际上必须反向工作:扫描目标图像并为每个像素检索源坐标和源像素。应用双线性或双三次重采样以避免混叠。

为了便于实现,还应调整网格化思想:不要对目标网格进行变形,而是保持其不变并将反向变形应用于源网格。

最后一件事:在网格方法中,将网格节点的位移视为您可以单独处理的两个标量函数 DX(i, j) 和 DY(i, j)。根据节点位移的知识,您可以通过插值估计任何像素的位移(双三次在这里是合适的)。

关于android - 触摸点区域时扭曲图像区域?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45182373/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com