android– 如何将图像转换为纹身?

android– 如何将图像转换为纹身?,第1张

概述我工作的应用程序为tattoolater我需要转换图像(从相机或从画廊中选择)转换为纹身…我的要求如下   我从github找到了一个示例代码https://github.com/DrewDahlman/ImageFilterree/master/Android/project它用于图像滤波..我不知道这是将图像转换为纹身的正确过程如果有

我工作的应用程序为tattoolater我需要转换图像(从相机或从画廊中选择)转换为纹身…

我的要求如下

   我从github找到了一个示例代码
https://github.com/DrewDahlman/ImageFilter/tree/master/Android/project

它用于图像滤波..

我不知道这是将图像转换为纹身的正确过程

如果有人知道这个纹身在androID中请建议我我Google了很多

提前致谢..

解决方法:

你需要一个差异过滤器:

1)你计算水平差异(这里你将有垂直段)

2)你计算了垂直差异(这里是水平线段)

3)你或两张地图,找到轮廓

4)如果你愿意,重新创建一个Bitmap对象

像(EDITED)这样的东西:

int[] pixels;int wIDth = yourbitmap.getWIDth();int height = yourbitmap.getHeight();yourbitmap.getPixels(pixels, 0, wIDth, 0, 0, wIDth, height);// transform grayscaleint[] image = new int[wIDth*height];for (int y=0; y<height; y++)    for (int x=0; x<wIDth; x++)    {        int pixel = image[y*wIDth + x];        image[y*wIDth + x] = (color.red(pixel) + color.green(pixel) + color.blue(pixel))/3;    }// calculate diff_x (vertical segments)int[] dx = new int[wIDth*height];for (int y=0; y<height; y++)    for (int x=0; x<wIDth; x++)        dx[y*wIDth + x] = (x==0 || y== 0 ? 0 : Math.abs(image[y*wIDth + x] - image[y*wIDth + x-1]));// calculate diff_y (horizontal segments)int[] dy = new int[wIDth*height];for (int y=0; y<height; y++)    for (int x=0; x<wIDth; x++)        dy[y*wIDth + x] = (x==0 || y== 0 ? 0 : Math.abs(image[y*wIDth+x] - image[(y-1)*wIDth+x])); // when the color intensity is higher than THRESHolD, accept segment// you'll want a slIDer to change THRESHolD valuesbool[] result = new bool[wIDth*height];const int THRESHolD = 60; // adjust this valuefor (int y=0; y<height; y++)    for (int x=0; x<wIDth; x++)        result[y*wIDth + x] = (dx[y*wIDth + x] > THRESHolD || dy[y*wIDth + x] > THRESHolD);Bitmap result = Bitmap.createBitmap(wIDth, height, Bitmap.Config.ARGB_8888);for (int y=0; y<height; y++)    for (int x=0; x<wIDth; x++)               result.setPixel(x, y, result[y*wIDth+x]? color.Black : color.White);@H_419_34@
总结

以上是内存溢出为你收集整理的android – 如何将图像转换为纹身?全部内容,希望文章能够帮你解决android – 如何将图像转换为纹身?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1117784.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)