当前位置: 首页 > 知识库问答 >
问题:

Android投影中的图像变形

乜建柏
2023-03-14

在我的Android应用程序,我需要变形的图像从一个点到另一个点。看起来应该是那样的

原点A和B是A的新位置

我尝试使用“drawBitmapMesh”函数使其成为可能,但没有达到,以下是包装代码:

公共空隙扭曲(浮动起点TX、浮动起点、浮动终点X、浮动终点Y){

        float ddPull = (endX - startX) * (endX - startX) + (endY - startY) * (endY - startY);
        float dPull = (float) Math.sqrt(ddPull);

        for (int i = 0; i < (COUNTS * 2); i += 2) {
            float dx = orig[i] - startX;
            float dy = orig[i + 1] - startY;
            float dd = dx * dx + dy * dy;
            float d = (float) Math.sqrt(dd);

            // do deformation when the point is in the circle
            if (d < cirR) {
                double e =(cirR * cirR - dd) * (cirR * cirR - dd) / ((cirR * cirR - dd + dPull * dPull) * (cirR * cirR - dd + dPull * dPull));
                double pullX = e * (endX - startX);
                double pullY = e * (endY - startY);

                verts[i] = (float) (orig[i] + pullX);
                verts[i + 1] = (float) (orig[i + 1] + pullY);

            }
        }

        invalidate();
    }

共有1个答案

陆正奇
2023-03-14

最后我自己解决了这个问题,我使用Android的GPUimage并用GLSL编写了一个定制的过滤器,效果很好~!

 类似资料:
  • 有很多关于3D的opengl投影矩阵的很棒的教程,但我不是在做3D。我真的很难根据自己的喜好进行正交投影设置。 int宽=320;int高=480; 我使用这些设置创建了一个视图投影矩阵。 创建此视图和投影矩阵并将它们传递给gpu之后。 然后我创建一个从的四边形,以便它的原点位于中心。 然后我为四边形制作一个比例矩阵,这样我就可以在屏幕上看到它了。它呈现为一个完美的正方形,但当然glViewpor

  • 我已经使用Google Maps API V3创建了一个自定义地图。这是一幅虚构世界的矩形地图,而不是真实世界中的任何东西。 我一直在读关于如何在自定义谷歌地图中使用投影的文章。我需要使用投影,因为使用投影放置标记和区域,它们不会水平重复。总之,我从教程中提取了以下代码: 我已经把它应用到我的地图上,它似乎起作用了。然而,我正在试图弄清楚如何改变投影的比例。当我放置这样的标记时: 标记被放置在地图

  • 本文向大家介绍Python OpenCV处理图像之图像直方图和反向投影,包括了Python OpenCV处理图像之图像直方图和反向投影的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了Python OpenCV图像直方图和反向投影的具体代码,供大家参考,具体内容如下 当我们想比较两张图片相似度的时候,可以使用这一节提到的技术 直方图对比 反向投影 关于这两种技术的原理可以参考我上面贴的

  • null @suppressLint(“错误常量”)

  • 目标 在本章中,我们将学习直方图反投影。 理论 它由 Michael J. Swain,Dana H. Ballard 在他们的论文《Indexing via color histograms》中提出。 用简单的话来说它是什么? 它用于图像分割或查找图像中感兴趣的对象。简而言之,它会创建与我们的输入图像相同大小(但为单个通道)的图像,其中每个像素对应于该像素属于我们对象的概率。用更简单的话说,在输

  • 本文向大家介绍Python实现投影法分割图像示例(一),包括了Python实现投影法分割图像示例(一)的使用技巧和注意事项,需要的朋友参考一下 投影法多用于图像的阈值分割。闲话不多说,现用Python实现。 上代码。 原图 垂直投影图 水平投影图 由这两图可以确定我们所需的分割点,从而可以进行下一步的文本分割。这将在下一篇博客中实现。 以上这篇Python实现投影法分割图像示例就是小编分享给大家的