图像描述算法排位赛:SceneXplain 与 MiniGPT4 谁将夺得桂冠?

2023-11-19

如果你对图像描述算法的未来感到好奇,本场“图像描述算法排位赛”绝对是你不能错过的!在这场较量中,SceneXplain 和 MiniGPT-4 将会比试,谁将摘得这场比赛的桂冠?

背景介绍

在上篇文章中,我们介绍了图像描述(Image Caption),简单来说,你给模型输入一张图像,模型输出是一句能够描述图像场景的文本句子。

模型不仅要理解图片里的内容,还需要使用到自然语言来进行描述。因此它涉及到 对图像内容的理解自然语言的生成。它链接了计算机视觉和自然语言处理两个领域的问题。

近年来,图像描述算法已经不止是生成简单的描述,它已经可以深入到场景分析,能够解释和解释复杂的视觉信息,并提供对图像的全面描述。

好的图像描述能够让开发者有机会完成更多有实际价值的应用,举个例子,在博物馆等领域,视障人士可以获得对艺术作品的准确描述;在电商领域,图像描述算法能够自动对数以千万的未标注图像生成描述,高效地实现分类检索。

在接下来的“图像描述算法排位赛”里,我们将会对市场上 5 种领先的图像描述算法进行全方位分析和比较。而在这场激烈的竞争中,SceneXplain 和 MiniGPT4 无疑是最新、最值得关注的两名选手。

我们的评估将重点考察这些算法的 细节度、话题度、事实准确性以及可读性,同时也会评估它们在复杂场景理解和解释方面的表现。最后的结果将为您提供权衡利弊、做出正确决策的依据。

参赛选手介绍

本次评估中选取了 5 种图像字幕算法:

  • SceneXplain 利用 GPT-4 等大型语言模型的强大功能为复杂的视觉内容生成复杂、详细且上下文丰富的文本描述。它致力于通过提供无与伦比的体验,在图像描述领域树立起新的基准。

  • MiniGPT4 把 BILP 2 的图像编码器与大型开源语言模型 Vicuna 整合起来,并且冻结了两者的大部分参数,只训练其中很少的一部分。此外,MiniGPT-4 还和 ChatGPT 合作创建了一个数据集,其中包含 3500 个高质量的图像和文本数据集来微调模型,显著提高了模型的生成可靠性和整体可用性。

  • Midjourney:最近发布的 /describe 功能,将图像转换为提示词(Prompt),它能够分析图像的关键内容和图像的类型,如电影风格,油画风格等,用来激发创作者的灵感。

  • BLIP2:从现成的冻结预训练图像编码器和冻结的大型语言模型中引导视觉语言预训练。它是一种通用的预训练框架,也就是说,你可以任意对接自己的模型。

  • CLIP Interrogator 2.1: 一款专门设计给 Stable Diffusion 2.0 模型生成提示词的工具。它基于 ViT-H-14 OpenCLIP 模型,展示了图像描述领域的创新潜力。

评估指标

为了让图像描述算法的比较更加公正和全面,我们选择了一组评估指标,这些指标都非常注重生成描述的质量。我们的评估指标不仅侧重于描述的细节度、话题度和事实性,还注重描述的易读性,这样才能真正帮助我们了解每种算法的优缺点。

1. 细节度

“细节”指标关注算法是否能够准确地 捕捉描述 图像中的每一处细节,并评估算法对视觉信息的理解和描述能力。通过评估生成的图像描述的粒度级别,确定算法理解和传达复杂视觉信息的能力。 alt

由 SceneXplain/Comet 给出(得分为 5):在这个奇妙的场景中,一群人和动物聚集在一张桌子旁,参加一场愉快的茶话会。一个小女孩坐在她古怪的伙伴中间,其中包括一个穿着帽子和领结的时髦男子、一个带着好奇表情的猫和一个戴着蓝色领结的可爱兔子。桌子上摆满了茶杯和茶壶,增添了迷人的氛围。这幅迷人的插画将观众带入一个想象丰富的世界,在这里人类和拟人化的动物们聚在一起,品着热气腾腾的茶水,享受彼此的陪伴。

由 BLIP2 提供(得分为 1):爱丽丝和兔子在茶会上的插图

2. 话题度

这个指标衡量算法在生成描述中 识别整合 与当代事件、流行文化、知名人物或作品相关的内容的能力,这样的描述才能够与目标观众产生共鸣,具有吸引力。

alt

由 SceneXplain/Bolt 给出(得分为 5):在这个极富吸引力的画面中,小丑和蝙蝠侠正展开一场惊心动魄的对决,引起了人们的注意。小丑带着他标志性的笑容,手里拿着卡牌,和一个穿着蝙蝠侠服装的女人对時,他们之问的紧张气氛显而易见,但随着蝙蝠俠和猫女一起打牌,气氛出现了意想不到的转折。蝙蝠标志装饰在蝙蝠俠的头上,象征着他对正义的坚定。在这个耐人寻味的场景中,来自 DC 漫画的许多其他角色也出现在画面里,为它注入了一种兴奋和阴谋的感觉,让观众们坐立不安。

由 CLIP Interrogator 2.1 提供(得 1 分):一组并排站立的漫画人物,灵感来自 Jim Lee,系列艺术,猫玩扑克,凯莉詹纳扮演猫女,头,尼尔亚当斯 | 居中

3. 事实性

Factuality 是图像描述领域中非常重要的一个指标,因为它涉及到生成描述的准确性和可信度。在生成图像描述时,算法需要考虑到图像中的各种元素,如物体、场景、颜色等,然后将这些元素转化为自然语言。如果算法生成的描述与图像不符,或包含 AI 幻觉(Hallucinations),那么这个模型的 Factuality 分数就会降低。

alt

由 SceneXplain/Dune 给出(得分为 5):这张令人心碎的图像捕捉到了巴哈马卡特里娜飓风的毁灭性后果。曾经繁荣的城市景观现在是一片毁灭的景象,许多建筑物变成了废墟。鸟瞰图显示了一座受损的桥梁和一条被强大风暴破坏的道路。在废墟中,房屋变成了废墟,它们曾经坚固的结构现在只是飓风肆虐前的回忆。在这片荒凉中,大自然侵蚀了文明的残余,树木和树叶取代了一座孤零零地矗立在曾经繁华社区中的房子。这一场景尖锐地提醒人们,此类自然灾害的巨大威力和持久影响。

由 MiniGPT4 给出(得分为 1):这张图片显示了一个沿海小镇的景色,岸边有房屋和建筑物。镇四面环水,水中有舟。这些房子是用木头建造的,有茅草屋顶。小镇四周绿树成荫,看不到人影。天空晴朗,没有云彩。该图像是从高空拍摄的,显示了整个城镇。

5. 困惑度
alt

困惑度(Perplexity)是衡量生成文本易读性的一种指标,它与可读性密切相关,分数越低说明文本越好理解,也能说明算法提供的整体用户体验。

需要注意的是,我们没有把速度作为评估指标,因为它可能会受到 GPU 和基础设施等因素的影响,这些因素不在我们的比较范围内。我们着重关注于图像描述的质量,和对复杂场景的理解和解释的能力。

alt

我们将使用 GPT-2 语言模型,并采用滑动窗口策略来评估一句话的困惑度。这意味着我们会反复滑动上下文窗口,以便模型在进行每个预测时具有更多的上下文信息。

为确保对每个图像字幕算法在我们选择的评估指标上的性能进行客观比较,我们实施了一个标准化的评分系统,利用外部人工标注者的专业知识。这些标注者熟悉图像字幕和场景理解领域,并受邀独立评估算法的性能。对于每个评估指标,即细节、主题相关性、Factuality 和 Perplexity,标注者在 1 到 5 的评分尺度上分配分数,其中 1 分最低,5 分最高。这种方法确保得分在各个指标上不仅一致,而且不受任何潜在偏见的影响,确保公平可靠地评估竞争算法。

为了确保公正地比较每个图像描述算法的表现,我们采用了一个标准化的评分系统,邀请了精通图像描述和场景理解领域的外部人工标注员,来独立评估算法的表现。 对于这 4 个指标:细节、时事性、事实性和困惑性,每个标注者都会给出一个 1 到 5 的评分,其中 1 分最低,5 分最高。

为确保客观地在这些评估指标中比较每个图像字幕算法的性能,我们实施了一个标准化的评分系统,利用外部人工标注员的专业知识。这些精通图像字幕和场景理解领域的标注人员受邀对于四个指标中的每一个 细节、时事性、事实性和困惑性,每位标记者都会打出了一个 1 到 5 的分数,1 分最低,5 分最高。这种方法保证了分数不仅在各种指标之间保持一致,而且没有任何潜在的偏见,从而确保了对竞争算法进行公平可靠的评估。

深入分析实验结果

为了对图像描述算法进行全面并深入的评估,我们精心挑选了一组 33 张非常复杂的图像,这些图像涵盖了多种风格,包括真实场景、人工创作、油画、照片和漫画等。

评估使用的图像版权属于它们各自的原作者
评估使用的图像版权属于它们各自的原作者

我们已将评估的全部结果,包括每种算法生成的描述文本汇总在飞书表格里。感兴趣的小伙伴可以复制链接,深入地了解每个算法的表现,得出自己的结论。

表格:https://u84gxokzmi.feishu.cn/file/OLfObDxbuoYwvlxAZZvc19d7nJf

为了提供不同算法特征的更直观的可视化,我们还创建了一个雷达图,显示每个算法在各种指标上的性能。这种图形表示可以清楚地比较它们的优缺点,使读者更容易理解性能差异。为了图表看起来更清晰,雷达图没有包含(越小越好的)困惑度指标。现在,你可以根据每个算法在雷达图上的区域大小,来高效地判断出它们在细节、时事性和事实性方面的整体表现。

为了对上述实验结果展开洞察,理解影响算法表现的潜在因素,我们深入研究了图像描述和场景理解的挑战,以及不同算法性能差异背后的可能原因。

1. 复杂的视觉信息处理

SceneX 变体(Aqua、Bolt、Comet 和 Dune)在 Details 指标中始终优于其他算法,表明捕获和描述图像中复杂视觉信息的卓越能力。这表明 SceneX 具备处理复杂场景理解和解释的能力。

在“细节度”指标中,SceneXplain 算法家族(Aqua、Bolt、Comet 和 Dune)表现始终优于其他算法,说明它在 捕捉描述 图像中复杂细节的卓越能力。这表明,SceneXplain 很适合处理复杂的场景理解和说明。

准确捕获图像中复杂细节的能力是一项具有挑战性的任务。它要求模型对视觉内容有深刻的理解,并能够生成连贯且符合上下文的文本描述。SceneX 在细节指标上的一致表现可归功于其先进的架构,该架构利用了大型语言模型的强大功能,使其能够比同类产品更有效地处理复杂的场景理解和解释。

准确地捕捉图像中复杂细节 是非常具有挑战性的。这要求模型必须具备深入的视觉理解,和生成连贯且符合上下文的文本描述的能力。在这方面,SceneXplain 算法家族(Aqua、Bolt、Comet 和 Dune)表现最为出色。

之所以能够在“细节”指标上表现出色,主要归功于 SceneXplain 的先进架构。利用大型语言模型的能力,它能够准确地捕捉图像中复杂的细节信息,并且更有效地处理复杂的场景理解和描述。

2. 话题度和吸引力

除了准确地捕捉图像中的细节之外,生成与当代事件、流行文化以及知名人物或作品相关的字幕也是图像字幕的另一个难点。这要求模型必须具备广泛的知识库,和将这些信息融入描述的能力。

在这方面,SceneXplain 中的 Bolt 和 Aqua 表现出色,在所有算法中展示出最高的话题度得分,展现了它们生成相关且吸引人的描述的能力。

SceneXplain 在话题性方面的卓越表现归功于其先进的训练过程,通过让模型接触到各种各样的主题,并使其能够生成更具吸引力的图像描述。

总体而言,通过使用 SceneXplain,我们可以更好地处理图像描述生成的复杂任务,同时生成更具吸引力和话题度的图像描述。

3. 事实与幻觉

确保生成的字幕的真实性至关重要,因为它有助于避免生成虚假信息或幻觉。BLIP2 的真实性得分最好,但其他指标尤其是细节度和话题度上表现较差,因为 BILP2 生成的几乎都是非常简洁的句子。

另一方面,SceneXplain 在真实性和其他指标之间取得了平衡,说明它的总体表现更为稳定和强劲。

4. 可读性和困惑

保持描述文本的流畅易懂也是一项不小的挑战,需要模型生成既符合上下文又易于理解的描述。SceneXplain 在这项指标上的成功可以归功于它用到了大型语言模型,这些模型以模仿人类说人话而闻名四方。

SceneXplain 中的 Dune 和 Aqua 表现出了最低(也就是最好)的困惑度分数,表明它们生成的字幕比其他算法的字幕更加易懂、且连贯。

5. SceneXplain 与 miniGPT4

相较于 SceneXplain,MiniGPT-4 在细节度和事实性方面表现相对较好,但在主题相关性和困惑度方面则略逊一筹。也就是说,虽然 MiniGPT-4 是一个强有力的竞争对手,但在复杂场景的理解和生成吸引人的图像描述文本方面,它就没有 SceneXplain 算法那么强大了。

虽然结果已经展示了 SceneX 图像描述算法的整体实力,但在我们的分析中始终保持微妙、客观的视角非常重要。我们需要深入挖掘每个算法在各个指标上的表现,并从多个角度来评估它们的综合表现。这样可以提供一个更加完整的评估,让用户能够根据自己的具体需求做出明智的决策。

结论

以上就是对各种图像描述算法的全面评估,结果表明,SceneXplain 在细节、话题性、真实性和可读性方面始终表现出色。它利用了 GPT-4 等大型语言模型,SceneXplain 能够为复杂的图像生成 深入细节上下文丰富 的文本描述,从而在市场里脱颖而出。

此外 SceneXplain 提供的易于集成和使用的 API 还能为开发和集成带来便利,提高你的生产效率。

SceneXplain 在多个领域产生积极影响:

  • 增强可访问性:SceneXplain 能够帮助公共组织转换多媒体内容,生成的全面图像描述可以显着改善视障用户的在线体验。

  • 提升 SEO:有了 SceneXplain 提供的详细准确的图像字幕,搜索引擎能更好地理解你的视觉内容,这有望提高你网站的排名,并带来有机流量。

  • 提升视觉叙事能力: SceneXplain 能让你的图片说出更多故事来,所生成的生动描述能够为图像增添深度和丰富性,将普通的图像转变为沉浸式的叙事体验。

想在这个快速变化的互联网时代站稳脚跟,就必须得采用前沿技术了!本次评估显示 SceneXplain 的表现非常出色,不过我们还是建议大家自己去探索它的能力和潜力,才能真正领略它的价值。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

图像描述算法排位赛:SceneXplain 与 MiniGPT4 谁将夺得桂冠? 的相关文章

  • C语言经典100例题(18)--题目:求s=a+aa+aaa+aaaa+aa...a的值

    目录 题目 问题分析 代码 测试结果 题目 求s a aa aaa aaaa aa a的值 其中a是一个数字 例如2 22 222 2222 22222 此时共有5个数相加 几个数相加有键盘控制 问题分析 加数之间的规律 a a 0 10
  • 用Python让奇怪的想法变成现实,2023年继续创作

    2023年继续写作 用文章记录生活 时间过得真快 一下就到2023年了 由于疫情肆虐 在网络的游弋的实现也长了 写作的自然也多了 回想一下 2018 2021年这三年时间里一篇文章也没写过为0 哈哈 没错 为0 这段时间总是忙于自己的工作
  • 软件测试-软件缺陷有哪些,一文贯彻到底

    软件缺陷 软件缺陷 又称之为 Bug 即计算机软件或程序中存在的某种破坏正常运行能力的问题 错误 或者隐藏的功能缺陷 表现形式A 软件没有实现产品规格说明书所要求的功能模块 表现形式B 软件中出现了产品规格说明指明不应该出现的错误 表现形式
  • 浅谈Django之单元测试

    一 什么是 单元测试 单元测试 是用来对一个模块 一个函数或者一个类来进行正确性检验的测试工作 如果测试通过则说明我们这个函数或功能能够正常工作 如果失败要么 测试用例 不正确 要么函数有bug需要修复 二 如何使用单元测试 from dj
  • 移动端APP自动化测试框架-UiAutomator2基础

    很早以前 我用 uiautomator java实践过Android APP自动化测试 不过今天要提的不是uiautomator 而是uiautomator2 听起来uiautomator2像是uiautomator的升级版 但是这两款框架
  • 银行测试要求高吗?从业人员来为你解答!

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读1 5k次 点赞69次 收藏10次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自
  • 【HttpRunner】接口自动化测试框架

    简介 2018年python开发者大会上 了解到HttpRuuner开源自动化测试框架 采用YAML JSON格式管理用例 能录制和转换生成用例功能 充分做到用例与测试代码分离 相比excel维护测试场景数据更加简洁 在此 利用业余时间研究
  • 低代码是行业毒瘤?我不这么认为

    低代码是行业毒瘤 我不这么认为 1 什么是低代码 2 低代码的优缺点 3 你认为低代码会替代传统编程吗 4 如何入门低代码 5 常见的低代码平台 1 什么是低代码 低代码是一种可视化的应用开发方法 它允许用户通过较少的代码 以较快的速度来交
  • 网络安全之等保 2.0 测评

    一 身份鉴别 a 应对登录的用户进行身份标识和鉴别 身份标识具有唯一性 身份鉴别信息具有复杂度要求并定期更换 1 登录 mysql 查看是否使用了口令和密码的组合鉴别身份 mysql h 192 168 100 16 u root p 2
  • 地牢边缘 DUNGEON LIMBUS中文免安装版

    地牢边缘 是一款点阵图形式的像素风经典迷宫探索类游戏 玩家需要在游戏中收集多种装备 随机生成的无限地下城 在生死之际遇见的迷之铁匠和管理复活之村的年轻女性 为了找回遗失的记忆 进入更深的地下城 玩家还可以发展村落以及进化武器的多样化收集要素
  • 外包干了5个月,技术退步太明显了。。。。。

    先说一下自己的情况 本科生生 18年通过校招进入武汉某软件公司 干了差不多4年的功能测试 今年国庆 感觉自己不能够在这样下去了 长时间呆在一个舒适的环境会让一个人堕落 而我已经在一个企业干了5个月的功能测试 已经让我变得不思进取 谈了2年的
  • 年前去面了 6 家大厂,拿下 5 家 offer,进大厂好像也没有那么难吧......

    前言 十一月份的时候因为换工作的缘故 陆续参加了华为 阿里巴巴 字节跳动 拼多多 百度 Paypal 的社招面试 除了字节跳动流程较长 我主动结束面试以外 其他的都顺利拿到了 Offer 最近时间稍微宽裕点了 写个面经 希望对大家找工作有所
  • MySQL安装

    MySQL安装 MySQL在MAC下安装 下载 brew install mysql mysql server 在support files下 启动服务 mysql server start windows启动命令 net start my
  • MySQL忘记密码了怎么办

    MySQL忘记密码 今天在写jdbc时很悲催的发现自己的MySQL密码忘记了 没有办法了 重新设置一下密码吧 先关闭mysql服务mysql server stop 跳过权限检验 在使用该命令的时候要确保mysql服务是关闭的 不然是无法正
  • [大厂实践] 零配置服务网格与按需集群发现

    本文介绍了Netflix通过扩展Envoy支持按需集群发现机制帮助团队无缝迁移服务网格的实践 原文 Zero Configuration Service Mesh with On Demand Cluster Discovery 在这篇文章
  • 外包干了2个月,技术退步明显了...

    先说一下自己的情况 大专生 19年通过校招进入湖南某软件公司 干了接近4年的功能测试 今年8月份 感觉自己不能够在这样下去了 长时间呆在一个舒适的环境会让一个人堕落 而我已经在一个企业干了四年的功能测试 已经让我变得不思进取 谈了2年的女朋
  • 外包干了3个月,技术退步明显.......

    先说一下自己的情况 大专生 18年通过校招进入武汉某软件公司 干了接近4年的功能测试 今年年初 感觉自己不能够在这样下去了 长时间呆在一个舒适的环境会让一个人堕落 而我已经在一个企业干了四年的功能测试 已经让我变得不思进取 谈了2年的女朋友
  • Docker 安全必知:最佳实践、漏洞管理与监控策略

    容器安全是实施和管理像 Docker 这样的容器技术的关键方面 它包括一组实践 工具和技术 旨在保护容器化应用程序及其运行的基础架构 在本节中 我们将讨论一些关键的容器安全考虑因素 最佳实践和建议 容器隔离 隔离对于确保容器化环境的强大性和
  • Go 语言运算符详解:加法、算术、赋值、比较、逻辑和位运算符全面解析

    运算符用于对变量和值执行操作 加号运算符 将两个值相加 如下面的示例所示 示例代码 package main import fmt func main var a 15 25 fmt Println a 尽管加号运算符通常用于将两个值相加
  • 深入了解 Python MongoDB 查询:find 和 find_one 方法完全解析

    在 MongoDB 中 我们使用 find 和 find one 方法来在集合中查找数据 就像在MySQL数据库中使用 SELECT 语句来在表中查找数据一样 查找单个文档 要从MongoDB的集合中选择数据 我们可以使用 find one

随机推荐

  • mongo- spring boot 操作- and or查询

    mongo spring boot 操作 and or查询 场景 select from user where address 上海 age gt 10 and name 小明 or nickName like 小明 以前查询在 mongo
  • lfs在Mandrake安装下的安装的一些体验

    首先 在第一遍安装GCC的时候 提示 cannot find lc 从网上搜索出来的都是提示需要安装一个glibc static的这么一个包 我就找阿找阿 找了半天 反正是没有能够找到一个合适的版本出来 这就让我服了 还好 我在编译GCC的
  • 改用DirectShow+Opencv解决外置单USB接口的双目摄像头调用cv::VideoCapture打不开的问题

    最近在做windows人脸识别的项目中遇到一个很纳闷的问题 采用OpenCv库的VideoCapture打不开外置单USB双目摄像头 其他的只要是一个摄像头一跟USB就可以打开 在网上找了很多资料 七七八八的最终得以解决了 在这整理下 环境
  • 用虚幻4开发搭积木的VR游戏

    2016 年 9 月 23 24 日 由 CSDN 和创新工场联合主办的 MDCC 2016 移动开发者大会 中国 Mobile Developer Conference China 将在北京 国家会议中心召开 来自iOS Android
  • 如何创建一个Windows软件

    很久以前我创造了一个Windows软件 我今天把这个方法分享给大家 我的系统 Edition Windows 11 Pro Insider Preview Version 22H2 Installed on 7 30 2022 OS bui
  • 掘金个人主页头像旋转效果

    img src https sf1 ttcdn tos pstatp com img user avatar d1d3c1b115358ea70f51edcd697b58b2 300x300 image alt 钱端挖掘机师傅的个人资料头像
  • 服务器cpu最多几核心,决定虚拟服务器所需要的CPU核心数量是一件非常复杂的事情...

    决定虚拟服务器所需要的CPU核心数量是一件非常复杂的事情 但是综合考虑下面几个因素 相信管理员能够作出最适合于自己的决定 看起来决定虚拟服务器所需要的单颗CPU核心数量是一件非常简单的事情 但事实上有很多复杂因素需要考虑 首先 在虚拟环境C
  • ES索引库的别名的使用--不停服实现索引库的重建切换

    ES 的别名不停停服切换索引 线上发布 场景 我们现在线上正在使用 ES索引库 V 没有使用ES索引库别名 两个问题 现在由于字段更新 把线上的数据重新写入了V1库 现在如何在不断服的情况下 完美的实现 从V 切换到V1 索引库 后续如果再
  • 我的世界 服务器文件ess,求助服务器ess插件报错怎么解

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 12 54 56 ERROR Could not pass event PlayerInteractEvent to Essentials v2 15 0 52 java lang NoSuch
  • 以AI学AI系列——不懂就问(一)

    1 问 如果我想实现一个小型的类似chatGpt的应用 能够理解我输入的语音 我需要怎么做 回答 Based on your latest question it seems that you are interested in train
  • [图像处理]边缘提取以及Harris角点检测

    在本周的计算机视觉与模式识别作业中 给定输入图像是两张普通A4打印纸 上面可能有手写笔记或者打印内容但是拍照时角度不正 要求输出 1 图像的边缘 2 计算 A4纸边缘的各直线方程 3 提取A4纸的4个角点 作业要求的是使用C 的CImg库
  • Android系统启动流程,从init.rc 到 launcher 加载过程分析

    Android系统启动流程 从init rc 到 launcher 启动过程分析 目录 1 zygote 启动分析 1 1 init进程的入口函数 1 2 解析init rc 1 3 app main cpp 解析zygote启动参数 1
  • 传统IO与零拷贝

    传统IO 传统的 I O 数据传输是指在计算机系统中 使用输入 输出 I O 操作进行数据传输的一种方式 这种方式通常涉及将数据从内存传输到外部设备 如磁盘 网络等 或从外部设备传输到内存 传统的 I O 数据传输通常采用阻塞式的方式 即在
  • C# 4.0的一些新特性

    vs2010正式版4月12日发布了 前几天我也下了一个 但这几天都没有时间好好试用一下 今天针对C 语言的新特性使用了一下 感觉还不错 有几个新特性和大家分享一下 希望我没有太火星 一 新关键词 dynamic 在新版本的C 中 dynam
  • 【尚硅谷】SSM框架之SSM学习笔记

    MyBatis MyBatis简介 MyBatis历史 MyBatis最初是Apache的一个开源项目iBatis 2010年6月这个项目由Apache Software Foundation迁移到了Google Code 随着开发团队转投
  • rust + ffmpeg + sdl2 视频播放器,用纯RUST实现音视频流媒体服务

    Rust是一门系统编程语言 专注于安全 尤其是并发安全 支持函数式和命令式以及泛型等编程范式的多范式语言 RTMP协议确实复杂 在做这个项目之前 看过很多帖子 看过官方文档 但总是感觉不能彻底的理解清楚 在实现过一遍此协议之后 感觉清楚了不
  • 浅谈以太坊智能合约的设计模式与升级方法

    浅谈以太坊智能合约的设计模式与升级方法 1 最佳实践 2 实用设计案例 2 1 控制器合约与数据合约 1 gt 1 2 2 控制器合约与数据合约 1 gt N 2 3 控制器合约与数据合约 N gt 1 2 4 控制器合约与数据合约 N g
  • SpringBoot整合Mybatis-plus实现多级评论

    在本文中 我们将介绍如何使用SpringBoot整合Mybatis plus实现多级评论功能 同时 本文还将提供数据库的设计和详细的后端代码 前端界面使用Vue2 数据库设计 本文的多级评论功能将采用MySQL数据库实现 下面是数据库的设计
  • [学习记录]Flask会话维护

    前置知识 1 http是一种无状态的通信协议 本身不保存通信状态 2 web服务器本质上负责接收用户的请求 request 并按照规则给予用户响应 response 3 会话 session 是web服务器用来管理用户的一种方式 在一次会话
  • 图像描述算法排位赛:SceneXplain 与 MiniGPT4 谁将夺得桂冠?

    如果你对图像描述算法的未来感到好奇 本场 图像描述算法排位赛 绝对是你不能错过的 在这场较量中 SceneXplain 和 MiniGPT 4 将会比试 谁将摘得这场比赛的桂冠 背景介绍 在上篇文章中 我们介绍了图像描述 Image Cap