🌈 个人主页:十二月的猫-CSDN博客
🔥 系列专栏🏀大模型实战训练营
💪🏻 十二月的寒冬阻挡不了春天的脚步,十二点的黑夜遮蔽不住黎明的曙光
1.前言
PosterGenius致力于开发一套依托DeepSeek技术的智能论文海报生成平台。该系统在AI自动化处理的核心框架下,支持用户个性化调整与内容优化。用户仅需上传PDF格式的学术论文,平台即可智能解析文献内容,并生成适配用户选定风格的学术海报。生成的海报不仅能精准提炼论文核心观点,还通过智能图文混排强化视觉表现力。为提升海报设计的多元性与专业性,系统融合多模态自优化机制,持续改进文本摘要与视觉元素的协同效果。
2.风格增强思路
我们在调整风格时构想出了许多思路。在大量阅读文献后,我们采取了《LTGC: Long-tail Recognition via Leveraging LLMs-driven Generated Content》这里的思路对模型进行增强(仅仅参考思路,不涉及长尾识别)
这张图展示了一个基于生成式AI(如LLMs、T2I模型)的自动化内容生成与优化流程。核心思路是通过prompt工程扩展风格描述,利用T2I文生图模型将文本描述转化为图像。在过滤阶段,加载clip模型对生成图像进行语义对齐评估(图文匹配度过滤),输出Filtered Images。通过循环反馈机制(如生成→评估→调整Prompt→再生成)不断优化内容质量。
其特色在于将内容生成(Prompt+生成模型)和质量控制(CLIP+自反思)分离,确保可控性;并且通过迭代减少人工干预,实现数据生产的自优化;每个环节(如Prompt工程、T2I、评估)可独立替换或升级,确保模块化流程有条不紊的进行。
3.核心模块
3.1内容处理
利用DeepSeek的LLM(大型语言模型)API,将学术论文的标题、摘要、作者信息和全文(可选)转换为结构化的学术海报内容。这个工具特别适合研究人员、学生和学术工作者快速准备会议海报。
3.1.1 PDF文本提取
def _extract_text_from_pdf(self, pdf_path: str) -> str:"""Extract text from a PDF file."""text = ""with open(pdf_path, 'rb') as file:reader = PyPDF2.PdfReader(file)for page in reader.pages:text += page.extract_text() + "\n"return text
这个私有方法使用PyPDF2库从PDF文件中提取文本内容,为后续处理提供原材料。
3.1.2结构化海报内容生成
def process_paper(self, title: str, abstract: str, authors: str,paper_file: Optional[str] = None, request_id: str = None) -> Dict:
这是核心方法,它接受论文的基本信息(标题、摘要、作者)和可选的PDF文件,然后:从PDF提取文本、构建详细的提示词(prompt)、调用DeepSeek API获取结构化响应、返回组织好的海报内容。设置temperature=0.3确保输出稳定可靠。
3.2风格增强
专门用于增强学术海报的视觉设计和风格呈现。它利用DeepSeek的LLM API,根据用户提供的风格描述,为已有的海报内容添加专业的设计建议和美学优化。
3.2.1风格增强引擎
def enhance(self, content: Dict, style_description: str) -> Dict:
这是风格增强·的核心方法,它接收两个参数:
content: 由LLMProcessor生成的结构化海报内容style_description: 用户期望的风格描述(如"现代简约"、"科技感"、"传统学术"等)
3.2.2智能提示词设计
prompt = f"""
Enhance the following academic poster content to match this style:
"{style_description}"Original poster content:
{content}Please provide:
1. Enhanced title presentation
2. Color scheme recommendation (specific hex codes)
3. Typography suggestions (font families, sizes)
4. Layout recommendations
5. Visual element styling (borders, shadows, etc.)
6. Background design suggestions
7. Enhanced wording for key sections to match the style
"""
这段精心设计的提示词确保LLM提供全面的设计建议,从色彩到排版,从布局到文字表达。temperature=0.7的设置平衡了创造性和一致性,鼓励模型提供新颖但不离题的设计建议。
3.3图像生成
专门用于为学术海报生成定制化的背景图像。它利用Stability AI的Stable Diffusion XL模型,将研究内容转化为精美的视觉素材,获得专业级的海报背景。
3.3.1 智能图像生成引擎
def generate(self, content: Dict, custom_style: str = None) -> List[str]:
这是图像生成的核心方法,它接收两个参数:
content: 由LLMProcessor生成的结构化海报内容custom_style: 用户自定义的风格描述(可选)
3.3.2专业的图像后处理
def _process_image_for_display(self, image_path: str, target_width: int = 1080, target_height: int = 1920) -> str:
这个方法确保生成的图像:保持标准竖版比例(1080×1920);高质量缩放和裁剪;白色背景填充;适合打印的高分辨率
3.3.3多尺寸适配
自动尝试API支持的多种尺寸(768×1344、832×1216、1024×1024等),确保生成成功
3.3.4负向提示词
使用"text, words, labels, blurry, low quality, distorted"等负向提示,避免生成包含干扰元素的图像。
3.4图像过滤
在学术海报设计中,选择合适的视觉素材往往既费时又主观。我们小组使用CLIP模型,为研究人员提供了一个智能化的图像筛选解决方案,能够自动评估图像与研究内容的相关性和风格一致性。
3.4.1内容相关性评估
def filter_images(self, image_paths: List[str], content: Dict, custom_style_prompt: Optional[str] = None) -> List[str]:
该方法通过以下步骤实现智能筛选:从海报内容中提取关键文本(标题、目标、结果);构建多维度评估提示(学术可视化、专业图表等);计算图像与文本特征的余弦相似度;返回相关性最高的若干张图像。
3.4.2风格一致性分析
def calculate_style_alignment(self, image_path: str, style_description: str) -> float:
提供量化指标评估图像与指定风格的匹配程度(0-100分),可用于筛选符合特定美学要求的图像,比较不同图像的风格一致性。
3.4.3集成使用示例
# 初始化筛选器
filter = CLIPFilter()# 准备内容和图像
poster_content = {"title": "深度学习在医疗影像分析中的应用","objectives": ["提高CT扫描病灶检测准确率", "减少放射科医生工作量"],"results": ["准确率达到90%", "比传统方法快3倍"]
}
image_candidates = ["img1.jpg", "img2.png", "img3.svg"]# 筛选图像
selected_images = filter.filter_images(image_candidates,poster_content,custom_style_prompt="现代简约的医学可视化风格"
)# 获取风格评分
style_scores = filter.rank_images_by_style(selected_images,"专业医学期刊风格"
)
3.5海报生成
实现了从内容到成品的全流程自动化:
智能布局设计 - 自动组织研究内容为专业海报结构风格一致性 - 根据预设风格指南应用色彩和排版方案视觉优化 - 智能处理图像素材,确保最佳展示效果多格式输出 - 同时生成高分辨率PDF和预览图
3.5.1动态样式系统
def _parse_color(self, color_str):"""Parse color string to reportlab color."""if color_str.startswith('#'):r = int(color_str[1:3], 16) / 255g = int(color_str[3:5], 16) / 255b = int(color_str[5:7], 16) / 255return colors.Color(r, g, b)
这个颜色解析器支持HEX和命名颜色,为动态样式应用提供基础。
3.5.2自适应图像处理
def _process_image_for_poster(self, img_path, target_width=None, target_height=None):"""处理图像以适应海报布局"""img = Image.open(img_path)aspect_ratio = img_width / img_height# 智能调整尺寸保持比例if aspect_ratio < 1: # 竖版图像img = img.resize((target_width, target_height), Image.LANCZOS)
确保各类图像素材都能完美适配海报布局,保持专业视觉效果。
3.5.3输出成果
-
印刷级PDF:可直接提交会议的高质量文件
-
高清预览图:便于在线分享的1080×1920图片
-
标准化结构:包含完整学术海报要素
4.总结
完整项目代码将在后续同步更新在猫猫的CSDN账户下,感兴趣的友友可以点一下关注哈🥰🥰
本文核心贡献者:
彧渡黄河:https://blog.csdn.net/m0_66287144?type=blog
【如果想持续关注猫猫队伍的PosterGenius软件开发(基于deepseek大模型的应用开发),可以订阅热门专栏】
- 大模型训练营
【如果想学习更多深度学习知识,可以订阅热门专栏】
- 《AI认知筑基三十讲》
- 《PyTorch科研加速指南:即插即用式模块开发》
- 《深度学习理论直觉三十讲》
如果想要学习更多pyTorch/python编程的知识,大家可以点个关注并订阅,持续学习、天天进步你的点赞就是我更新的动力,如果觉得对你有帮助,辛苦友友点个赞,收个藏呀~~~