开发者社区 > 视觉智能 > 正文

视觉智能平台要上传多分图片,应该怎么处理?

咨询一个问题,在视觉智能开放平台中的"通用视频生成"能力,上传素材文件不在同一地域OSS的情况下,如果要上传多分图片,应该怎么处理?

展开
收起
奔放或澜 2023-12-18 17:25:13 51 0
5 条回答
写回答
取消 提交回答
  • 可以参考通用视频生成的示例代码,是支持多个素材的上传的。
    通用视频生成示例代码:https://help.aliyun.com/zh/viapi/use-cases/general-video-generated-1
    image.png

    2023-12-19 10:34:29
    赞同 展开评论 打赏
  • 可以参考官方文档,文件在本地或文件不在同一地域OSS

    /*
    引入依赖包
    <!-- https://mvnrepository.com/artifact/com.aliyun/videoenhan20200320 -->
        <dependency>
          <groupId>com.aliyun</groupId>
          <artifactId>videoenhan20200320</artifactId>
          <version>${aliyun.videoenhan.version}</version>
        </dependency>
    */
    
    import com.aliyun.tea.TeaModel;
    import com.aliyun.videoenhan20200320.models.GenerateVideoAdvanceRequest;
    import com.aliyun.videoenhan20200320.models.GenerateVideoResponse;
    
    import java.io.InputStream;
    import java.net.URL;
    import java.util.ArrayList;
    import java.util.List;
    
    public class GenerateVideo {
        public static com.aliyun.videoenhan20200320.Client createClient(String accessKeyId, String accessKeySecret) throws Exception {
            /*
              初始化配置对象com.aliyun.teaopenapi.models.Config
              Config对象存放AccessKeyId、AccessKeySecret、endpoint等配置
             */
             com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config()
                    .setAccessKeyId(accessKeyId)
                    .setAccessKeySecret(accessKeySecret);
            // 访问的域名
            config.endpoint = "videoenhan.cn-shanghai.aliyuncs.com";
            return new com.aliyun.videoenhan20200320.Client(config);
        }
    
        public static void main(String[] args) throws Exception {
            // 创建AccessKey ID和AccessKey Secret,请参考https://help.aliyun.com/document_detail/175144.html
            // 如果您使用的是RAM用户的AccessKey,还需要为子账号授予权限AliyunVIAPIFullAccess,请参考https://help.aliyun.com/document_detail/145025.html
            // 从环境变量读取配置的AccessKey ID和AccessKey Secret。运行代码示例前必须先配置环境变量。
            String accessKeyId = System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID");
            String accessKeySecret = System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"); 
            com.aliyun.videoenhan20200320.Client client = GenerateVideo.createClient(accessKeyId, accessKeySecret);
            // 场景一,使用本地文件
            // InputStream inputStream = new FileInputStream(new File("/tmp/generateVideo.png"));
            // 场景二,使用任意可访问的url
            URL url = new URL("http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/videoenhan/GenerateVideo/1-video1.mp4");
            InputStream inputStream = url.openConnection().getInputStream();
            GenerateVideoAdvanceRequest.GenerateVideoAdvanceRequestFileList generateVideoAdvanceRequestFileList = new GenerateVideoAdvanceRequest.GenerateVideoAdvanceRequestFileList();
            generateVideoAdvanceRequestFileList.setFileName("video");
            generateVideoAdvanceRequestFileList.setType("video");
            generateVideoAdvanceRequestFileList.setFileUrlObject(inputStream);
            List<GenerateVideoAdvanceRequest.GenerateVideoAdvanceRequestFileList> generateVideoRequestFileLists = new ArrayList<>();
            generateVideoRequestFileLists.add(generateVideoAdvanceRequestFileList);
            GenerateVideoAdvanceRequest generateVideoAdvanceRequest = new GenerateVideoAdvanceRequest();
            generateVideoAdvanceRequest.setScene("general");
            generateVideoAdvanceRequest.setWidth(1000);
            generateVideoAdvanceRequest.setHeight(1000);
            generateVideoAdvanceRequest.setStyle("fast");
            generateVideoAdvanceRequest.setDuration((float) 10L);
            generateVideoAdvanceRequest.setDurationAdaption(true);
            generateVideoAdvanceRequest.setTransitionStyle("brush");
            generateVideoAdvanceRequest.setSmartEffect(true);
            generateVideoAdvanceRequest.setPuzzleEffect(true);
            generateVideoAdvanceRequest.setMute(true);
            generateVideoAdvanceRequest.setFileList(generateVideoRequestFileLists);
            com.aliyun.teautil.models.RuntimeOptions runtime = new com.aliyun.teautil.models.RuntimeOptions();
            try {
                GenerateVideoResponse generateVideoResponse = client.generateVideoAdvance(generateVideoAdvanceRequest, runtime);
                // 获取整体结果
                System.out.println(com.aliyun.teautil.Common.toJSONString(TeaModel.buildMap(generateVideoResponse)));
                // 获取单个字段
                System.out.println(generateVideoResponse.getBody());
            } catch (com.aliyun.tea.TeaException teaException) {
                // 获取整体报错信息
                System.out.println(com.aliyun.teautil.Common.toJSONString(teaException));
                // 获取单个字段
                System.out.println(teaException.getCode());
            }
        }
    }
    

    image.png

    ——参考来源于阿里云文档

    2023-12-19 01:05:37
    赞同 展开评论 打赏
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    在视觉智能开放平台的"通用视频生成"能力中,如果您需要上传的素材文件不在同一地域的OSS上,可以考虑使用阿里云的对象存储服务(OSS)进行文件的传输。首先,您需要确保所有的素材文件都被正确地上传到各自的OSS存储空间中。然后,您可以在上传素材时指定对应的OSS存储空间地址和文件路径。这种方式不仅可以处理多地域的文件上传,也有利于管理和维护您的素材文件。

    此外,对于图片的处理,如果客户直接上传的是视频素材,就可以直接进行视频人像卡通化处理。如果客户传入的是图片输出,可以先调用人物动漫化之后,再对动漫化后的图片进行通用视频生成。

    2023-12-18 21:07:37
    赞同 展开评论 打赏
  • 可以参考这个文件在本地或者非同一地域oss的传入调用示例
    https://help.aliyun.com/zh/viapi/use-cases/general-video-generated-1
    —该回答整理自钉群“阿里云视觉智能开放平台咨询1群”

    2023-12-18 20:54:56
    赞同 展开评论 打赏
  • 在视觉智能开放平台中,如果上传素材文件不在同一地域的OSS,要上传多张图片,可以按照以下步骤进行处理:
    1.创建OSS对象:首先,确保你已经创建了OSS对象,并获得了访问密钥(Access Key ID和Access Key Secret)以及OSS的域名。
    2.配置OSS客户端:使用你选择的编程语言(如Python、Java等),安装相应的OSS客户端库。根据所选语言和库的文档,配置OSS客户端,设置访问密钥和OSS域名。
    3.上传图片到OSS:对于每一张要上传的图片,使用OSS客户端将其上传到OSS中。你可以选择将图片上传到同一个存储桶(Bucket)中,或者根据需要上传到不同的存储桶。
    4.获取图片的URL:一旦图片上传成功,你可以使用OSS客户端获取图片的URL。这将返回一个包含图片URL的响应,你可以将其用于后续的处理或调用视觉智能开放平台的API。
    5.调用视觉智能开放平台的API:在获取到所有图片的URL后,你可以将它们作为输入参数传递给视觉智能开放平台的"通用视频生成"能力。
    需要注意的是,由于图片不在同一地域的OSS,传输和加载速度可能会受到网络延迟的影响。为了提高性能和效率,你可以考虑将图片预先上传到离你最近的OSS地域,然后再调用视觉智能开放平台的API进行视频生成。

    2023-12-18 19:41:33
    赞同 展开评论 打赏

为开发者提供高易用、普惠的视觉API服务,帮助企业快速建立视觉智能技术应用能力的综合性视觉AI能力平台。适用于数字营销、互联网娱乐、安防、手机应用、泛金融身份认证等行业。

相关产品

  • 视觉智能开放平台
  • 热门讨论

    热门文章

    相关电子书

    更多
    阿里云视觉智能开放平台-产品介绍 立即下载
    阿里云视觉智能开放平台产品介绍 立即下载
    利用CNN实现无需联网的图像识别 立即下载