Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了android – 如何合并图像并强加于彼此大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
假设我在一些Framelayout中上传两张或两张以上的照片.在这里,我正在三个不同的位置在同一个人的三张照片上传三张照片.那么什么图像处理库在 Android或Java或Native中可用来执行某些操作,如图所示.

我想强加多张照片.@H_450_3@

这些东西:@H_450_3@

一个想法是:@H_450_3@

>在所有这图片中进行一些分层,并在图片中找到不匹配的区域并合并它们.@H_450_3@

如何将多张图片与其他图片合并?通过检查相似性并相互合并?@H_450_3@

有没有任何第三方Api或一些Photoshop服务,可以帮助我做这些有形图像处理?@H_450_3@

解决方法

在这种情况下,您不仅仅是要组合图像.你真的想在不同的位置组合一个包含相同对象的场景.

因此,输出图像中的给定像素的颜色是每个图像中该像素的值之和除以图像数量的总和,不仅仅是一个简单的组合或alpha复合.@H_450_3@

在这种情况下,您可以:@H_450_3@

>确定场景背景,分析虑多个图像时不改变的像素.
>从输出图像开始只是背景.
>对于每个图像,删除背景以获得所需的对象并将其与输出图像组合.@H_450_3@

一个Marvin插件来执行这个任务,叫做MergePhoto.下面的程序使用这个插件来组合一套跑酷照片.@H_450_3@

import marvin.image.MarvinImage;
import marvin.io.MarvinImageIO;
import marvin.plugin.MarvinImagePlugin;
import marvin.util.MarvinPluginLoader;

public class MergePhotosApp {

public MergePhotosApp(){

    // 1. load images 01.jpg,02.jpg,...,05.jpg into a List
    List<MarvinImage> images = new ArrayList<MarvinImage>();
    for(int i=1; i<=5; i++){
        images.add(MarvinImageIO.loadImage("./res/0"+i+".jpg"));
    }

    // 2. Load plug-in and process the image
    MarvinImagePlugin merge = MarvinPluginLoader.loadImagePlugin("org.marvinproject.image.combine.mergePhotos");
    merge.setAttribute("threshold",38);

    // 3. Process the image list and save the output
    MarvinImage output = images.get(0).clone();
    merge.process(images,output);
    MarvinImageIO.saveImage(output,"./res/merge_output.jpg");
}

public static void main(String[] args) {
    new MergePhotosApp();
}
}

输入图像和输出图像如下所示.@H_450_3@

大佬总结

以上是大佬教程为你收集整理的android – 如何合并图像并强加于彼此全部内容,希望文章能够帮你解决android – 如何合并图像并强加于彼此所遇到的程序开发问题。

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

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。