山东大学软件学院创新项目实训开发日志——第10周

2024-05-05 17:04

本文主要是介绍山东大学软件学院创新项目实训开发日志——第10周,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

山东大学软件学院创新项目实训开发日志——第10周

项目名称:ModuFusion Visionary:实现跨模态文本与视觉的相关推荐

-------项目目标:

  • 本项目旨在开发一款跨模态交互式应用,用户可以上传图片或视频,并使用文本、点、框等提示,精确分割出图片或视频中指定的物体,或者无提示地分割出所有物体。
  • 基于分割出的物体,用户可以选择生成感兴趣的其他图片或视频。
  • 内置推荐算法可以自动根据分割结果,推荐与之相关的信息。

本周完成的任务

1、添加了项目新功能:图生图
(1)所依赖模型:Stable-Diffusion
  • Stable-Diffusion在具有“文生图”功能的同时,也提供了“图生图”功能。
  • 并且“图生图”可以加入文本对其修改方向进行控制,具有一定的可控度。
  • 模型部署在服务器上,本地通过将指定指令上传到服务器,服务器将生成结果写回本地,再传给前端展示。
    在这里插入图片描述
(2)功能概述:
  • 用户点击侧边栏的“Generate”选项,即可进入图生图界面,用户可以在这里根据之前上传的图片生成与之相关的图片。
  • 提供了“Strength”拖动条,用户可以选择合适的“strength”参数,用于控制生成的图片相对于原图片的变化幅度。
  • 当用户不给予任何文本提示时,默认对原图片进行内容抽象;当用户给予文本提示时,会在原图片的基础上修改文本提示的内容。
(3)功能示例:

对于下面这张图片,当我们希望改变图中女人的穿着时,输入文本提示,“the woman wears a red shirt”,同时设置“strength”为0.75,生成的图片中女人便穿上了“red shirt”。
原图
生成图

2、优化了图片分析功能

之前的图片分析功能是,当点击侧边栏的“Analyze”时,便自动开始对图片进行分析,期间将陷入很长时间的等待,这对于用户的体验非常不好,因为在此期间并不能看到分析界面究竟是什么样子,因此对其进行了功能分离:

  • 当点击“Analyze”时,不再是直接陷入处理等待,而是进入"Analyze"界面。
  • "Analyze"界面展示用户上传的图片,并提供了操作提示,引导用户进行操作。
  • 用户可以点击“分析”按钮,对图片内容进行分析,分析结果将展示出来。
  • 用户可以根据分析的结果点击“Recommend”按钮,系统将为其推荐相关图片。
  • 添加了功能:用户可以自行输入文本,系统将根据用户输入的文本内容进行推荐,即实现“文生图”的裸自由性。

在这里插入图片描述

3、区别:

新功能“图生图”可以输入文本内容进行生成,而图片分析那里也可以输入文本内容进行生成,这两者有什么区别呢?

  • “图生图”侧重在于根据原始图片的内容进行生成,生成的新图片都是在原图片的基础上改变的。
  • 图片分析那里的图片生成则是纯粹的“文生图”。

下一阶段工作计划

  • 优化当前界面响应逻辑,处理当前存在的小bug。
  • 尽快部署完成视频帧定位功能。

这篇关于山东大学软件学院创新项目实训开发日志——第10周的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/962203

相关文章

JAVA项目swing转javafx语法规则以及示例代码

《JAVA项目swing转javafx语法规则以及示例代码》:本文主要介绍JAVA项目swing转javafx语法规则以及示例代码的相关资料,文中详细讲解了主类继承、窗口创建、布局管理、控件替换、... 目录最常用的“一行换一行”速查表(直接全局替换)实际转换示例(JFramejs → JavaFX)迁移建

Python中4大日志记录库比较的终极PK

《Python中4大日志记录库比较的终极PK》日志记录框架是一种工具,可帮助您标准化应用程序中的日志记录过程,:本文主要介绍Python中4大日志记录库比较的相关资料,文中通过代码介绍的非常详细,... 目录一、logging库1、优点2、缺点二、LogAid库三、Loguru库四、Structlogphp

JavaWeb项目创建、部署、连接数据库保姆级教程(tomcat)

《JavaWeb项目创建、部署、连接数据库保姆级教程(tomcat)》:本文主要介绍如何在IntelliJIDEA2020.1中创建和部署一个JavaWeb项目,包括创建项目、配置Tomcat服务... 目录简介:一、创建项目二、tomcat部署1、将tomcat解压在一个自己找得到路径2、在idea中添加

解决idea启动项目报错java: OutOfMemoryError: insufficient memory

《解决idea启动项目报错java:OutOfMemoryError:insufficientmemory》:本文主要介绍解决idea启动项目报错java:OutOfMemoryError... 目录原因:解决:总结 原因:在Java中遇到OutOfMemoryError: insufficient me

python项目环境切换的几种实现方式

《python项目环境切换的几种实现方式》本文主要介绍了python项目环境切换的几种实现方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录1. 如何在不同python项目中,安装不同的依赖2. 如何切换到不同项目的工作空间3.创建项目

SpringBoot项目整合Netty启动失败的常见错误总结

《SpringBoot项目整合Netty启动失败的常见错误总结》本文总结了SpringBoot集成Netty时常见的8类问题及解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参... 目录一、端口冲突问题1. Tomcat与Netty端口冲突二、主线程被阻塞问题1. Netty启动阻

python项目打包成docker容器镜像的两种方法实现

《python项目打包成docker容器镜像的两种方法实现》本文介绍两种将Python项目打包为Docker镜像的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 目录简单版:(一次成功,后续下载对应的软件依赖)第一步:肯定是构建dockerfile,如下:第二步

Python + Streamlit项目部署方案超详细教程(非Docker版)

《Python+Streamlit项目部署方案超详细教程(非Docker版)》Streamlit是一款强大的Python框架,专为机器学习及数据可视化打造,:本文主要介绍Python+St... 目录一、针对 Alibaba Cloud linux/Centos 系统的完整部署方案1. 服务器基础配置(阿里

Python+wxPython开发一个文件属性比对工具

《Python+wxPython开发一个文件属性比对工具》在日常的文件管理工作中,我们经常会遇到同一个文件存在多个版本,或者需要验证备份文件与源文件是否一致,下面我们就来看看如何使用wxPython模... 目录引言项目背景与需求应用场景核心需求运行结果技术选型程序设计界面布局核心功能模块关键代码解析文件大

C++多线程开发环境配置方法

《C++多线程开发环境配置方法》文章详细介绍了如何在Windows上安装MinGW-w64和VSCode,并配置环境变量和编译任务,使用VSCode创建一个C++多线程测试项目,并通过配置tasks.... 目录下载安装 MinGW-w64下载安装VS code创建测试项目配置编译任务创建 tasks.js