我写了个ImageWindow应用

文章目录

    • 0 引言
    • 1 应用简介
    • 2 主要功能和特点
      • 2.1 多图像同/异步像素级对比
      • 2.2 支持多达30+种图像格式
      • 2.3 高效率的图像处理性能
    • 3 简明使用教程
      • 3.1 软件下载安装与更新
        • 3.1.1 软件下载与安装
        • 3.1.2 软件更新
      • 3.2 多视窗添加并自动最优排列
      • 3.3 多样化图像导入方式
      • 3.4 自动切换显示模式
      • 3.5 同步缩放、拖拽以及快速复位
      • 3.6 八视窗同步像素级对比
    • 4 待完成功能
    • 5 总结一下

0 引言

在我的研究工作中,常常涉及不同图像处理算法或者不同参数下的图像的处理效果对比,尤其是在ISP图像处理领域,通过查看图像像素值之间的差异对于研究工作至关重要。众所周知,现有的PhotoShop工具已有了很强大的图像处理功能,纵使有这样地现成工具,但其始终很是无法很好地满足我的研究工作,因此,我决定设计出满足自己需求的专用型图像实验工具,以更好地提高我研究工作的效率,也希望能帮助到在该领域涉及范围内的伙伴们,欢迎了解、下载安装、使用和反馈!

  • 项目主页 https://iw.sokedev.cn/

1 应用简介

本次开发的应用程序主要是用于像素级图像对比、处理及分析的应用,其采用C++语言,结合Qt6图形开发框架设计并构建,目前仅支持Windows平台。

在你的工作、研究或者学习中使用它,某种程度上,我相信本产品或多或少会给你的研究或学习工作带来些许的便利,尤其是在图像算法研究上面,欢迎使用~

2 主要功能和特点

2.1 多图像同/异步像素级对比

本应用支持多视窗图像的像素级查看及对比,可通过简单的交互实现图像的缩放、拖动以及像素数值实时地同步显示。

2.2 支持多达30+种图像格式

可以输入图像格式繁多,其不仅支持常用的.jpg,.png,.jpeg,.bmp,.tiff,.tif,以及 .dng,还包括像 .ppm等30+多种图像格式的载入。

2.3 高效率的图像处理性能

本应用采用OpenGL来进行页面的渲染,加速图像显示,利用高效的处理逻辑及算法实现良好的软件性能。

3 简明使用教程

3.1 软件下载安装与更新

3.1.1 软件下载与安装

访问主页 https://iw.sokedev.cn/

点击即可下载

下载完成之后,双击安装包 ImageWindowIns1.0.0.exe 开始安装过程,安装过程中可选择相应安装路径即可;完成之后就可以在桌面上得到如下所示快捷方式。

双击 ImageWindow 快捷方式,便可运行本应用软件!

ImageWindow

3.1.2 软件更新

一般应用每次运行会进行自动的更新检查的,如需手动检查更新,可依次点击帮助->检查更新即可完成。

如果版本为最新版,则显示如下信息:

3.2 多视窗添加并自动最优排列

你可以通过拖拽图像到视窗中,或者通过单击视窗载入图像,也可以通过右键菜单载入图像,以实现多样化的图像载入。

  • 多样化的图像导入方式
  • 可替换视图图像
  • 支持移除所选视图、全部视图

多视窗添加

3.3 多样化图像导入方式

你可以通过拖拽图像到视窗中,或者通过单击视窗载入图像,也可以通过右键菜单载入图像,以实现多样化的图像载入。

  • 多样化的图像导入方式
  • 可替换视图图像
  • 支持移除所选视图、全部视图

多样化图像导入方式

3.4 自动切换显示模式

你可以载入彩色图像或者灰度图像,本应用会自动切换显示模式,以便于更好的图像处理。

  • 自动化地识别图像属性
  • 设置彩色、灰度两种显示模式

自动切换显示模式

3.5 同步缩放、拖拽以及快速复位

你可以通过鼠标滚轮操作来实现图像的同步缩放,也可以通过鼠标拖拽来实现图像的同步移动,同时也支持双击左键实现快速复位。

  • 等比例缩放,保持视觉一致性
  • 可实现图像的灵活拖动和快速复位
  • 支持自适应屏幕分辨率、视窗大小

同步缩放、拖拽以及快速复位

3.6 八视窗同步像素级对比

你可以通过打开视窗同步开关,来实现八个视窗的同步显示,以便于进行图像的像素级对比。

  • 可进行GPU进行加速渲染
  • 使用缓冲技术以保证视图流畅

八视窗同步像素级对比

4 待完成功能

下面是我目前还未完成的一些功能:

  • 图像异处标记
  • 图像直方图显示
  • 支持像素修改

等等,也欢迎大家留言,补充自己工作或学习研究中所需的一些的功能~

5 总结一下

其实我好久已经没写什么技术文章了,突然写这么些字,有些文字都显得不那么顺畅了,哈哈,大家凑合着看看吧!总之,这篇文章给伙伴们简单介绍了一下我自己开发的这个小应用,如果在使用过程中有任何的问题都可联系我,欢迎大家使用和反馈问题,也希望能并帮助到各位奋斗中的小伙伴们,加油!

软件使用问题QQ反馈群:757595454

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/266109.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MS1100——16-bit 内置基准模数转换器,可替代ADS1100

产品简述 MS1100 是一款高精度 16bit 模数转换器。内部集成 2.048V 基 准源,差分输入范围达到 2.048V 。使用了 I 2 C 兼容接口。电源电 压范围为 2.7V 到 5.5V 。 MS1100 转换速率为 15 、 30 、 60 或 240SPS ,集成有可编程增 益放…

【Web安全靶场】sqli-labs-master 21-37 Advanced-Injection

sqli-labs-master 21-37 Advanced-Injection 第一关到第二十关请见专栏 文章目录 sqli-labs-master 21-37 Advanced-Injection第二十一关-Cookie注入第二十二关-Cookie注入第二十三关-注释符过滤的报错注入第二十四关-二次注入第二十五关-过滤OR、AND双写绕过第二十五a关-过滤…

如何在Window系统部署BUG管理软件并结合内网穿透实现远程管理本地BUG

文章目录 前言1. 本地安装配置BUG管理系统2. 内网穿透2.1 安装cpolar内网穿透2.2 创建隧道映射本地服务3. 测试公网远程访问4. 配置固定二级子域名4.1 保留一个二级子域名5.1 配置二级子域名6. 使用固定二级子域名远程 前言 BUG管理软件,作为软件测试工程师的必备工具之一。在…

数据结构--树的遍历

数据结构--树的遍历 1. 前序中序后序遍历2. 前序中序后序遍历代码 1. 前序中序后序遍历 2. 前序中序后序遍历代码 /** public class TreeNode {int val 0;TreeNode left null;TreeNode right null;public TreeNode(int val) {this.val val;}} */// 前序遍历顺序&#xff1…

vue中使用echarts绘制双Y轴图表时,刻度没有对齐的两种解决方法

文章目录 1、原因2、思路3、解决方法3.1、使用alignTicks解决3.2、结合min和max属性去配置interval属性1、首先固定两边的分隔的段数。2、结合min和max属性去配置interval。 1、原因 刻度在显示时,分割段数不一样,导致左右的刻度线不一致,不…

GPT 的基础 - T(Transformer)

我们知道GPT的含义是: Generative - 生成下一个词 Pre-trained - 文本预训练 Transformer - 基于Transformer架构 我们看到Transformer模型是GPT的基础,这篇博客梳理了一下Transformer的知识点。 BERT: 用于语言理解。(Transformer的Encoder…

Redis 在 Linux 系统下安装部署的两种方式详细说明

小伙伴们好,欢迎关注,一起学习,无限进步 Redis安装和配置 1、首先在官网下载好redis-6.0.9.tar.gzhttp://redis.io/ 或者使用 wget 命令下载:wget http://download.redis.io/releases/redis-6.0.9.tar.gz 2、下载使用上传到阿里…

vue使用gitshot生成gif

vue使用gitshot生成gif 问题背景 本文将介绍vue中使用gitshot生成gif。 问题分析 解决思路: 使用input组件上传一个视频,获取视频文件后用一个video组件进行播放,播放过程进行截图生成图片数组。 demo演示上传一个视频,然后生…

【InternLM 实战营笔记】大模型评测

随着人工智能技术的快速发展, 大规模预训练自然语言模型成为了研究热点和关注焦点。OpenAI于2018年提出了第一代GPT模型,开辟了自然语言模型生成式预训练的路线。沿着这条路线,随后又陆续发布了GPT-2和GPT-3模型。与此同时,谷歌也…

微服务之qiankun主项目+子项目搭建

主项目使用history,子项目使用hash模式 1. 下载安装"qiankun": "^2.10.13"2. 手动调用qiankun,使用vue脚手架搭建的项目1. 主项目配置(我使用的是手动调用乾坤,在指定页面显示内容)1. 要使用的页面中引入乾坤…

微服务学习

一、服务注册发现 服务注册就是维护一个登记簿,它管理系统内所有的服务地址。当新的服务启动后,它会向登记簿交待自己的地址信息。服务的依赖方直接向登记簿要Service Provider地址就行了。当下用于服务注册的工具非常多ZooKeeper,Consul&am…

使用 Gradle 版本目录进行依赖管理 - Android

/ 前言 / 在软件开发中,依赖管理是一个至关重要的方面。合理的依赖版本控制有助于确保项目的稳定性、安全性和可维护性。 Gradle版本目录(Version Catalogs)是 Gradle 构建工具的一个强大功能,它为项目提供了一种集中管理依赖…

TSINGSEE青犀AI智能分析网关V4区域入侵检测算法及应用介绍

区域入侵检测算法主要应用于需要高度安全防护的场所,如:电力、水利、石油等国家基础设施场所;政府机关、军事基地等重要设施;监狱、看守所等监管场所;大型企业、工厂等生产区域;校园、住宅小区、楼宇等。这…

智能SQL生成:后端技术与LLM的完美结合

文章目录 引言一、什么是大模型二、为什么选择LLM三、开发技术说明四、系统架构说明五、编码实战1. Maven2. 讯飞大模型配置类3. LLM相关的封装4. 编写LLM的service5. 编写controller6. 运行测试 六、总结 引言 本篇文章主要是关于实现一个类似Chat2DB的根据自然语言生成SQL的…

【Leetcode每日一刷】哈希表|纲领、242.有效的字母异位词、349. 两个数组的交集

纲领 🔗代码随想录理论部分 关于哈希表这个数据结构就不再重复讲了,下面对几个关键点记录一下: 哈希碰撞 解决方法1:拉链法 解决方法2:线性探测法 下面针对做题要用到的三种结构讲一下(也是重复造轮子了…

NebulaGraph入门

感谢阅读 官方文档链接NebulaGraph简介nGQLnGQL简介占位标识符和占位符值注释实列大小写区分关键字 基本概念以及相关代码实现补充说明图空间语法以及列子创建克隆官方示例代码(创建并克隆)USE语句指定图空间时查看所有SPACESPACE详情CLEAR SPACE删库跑路(看玩笑的说…

fastAdmin表格列表的功能

更多文章,请关注:fastAdmin后台功能详解 | 夜空中最亮的星 FastAdmin是一款基于ThinkPHP5Bootstrap的极速后台开发框架。优点见开发文档 介绍 - FastAdmin框架文档 - FastAdmin开发文档 在这里上传几张优秀的快速入门图: 一张图解析FastAdmin中的表格列…

idea集成git详解教程(实用篇)

0.Git常用命令 Git常用命令-CSDN博客 1.下载git Git - Downloads 一路傻瓜式安装即可(NEXT) 2.软件测试 在Windows桌面空白处,点击鼠标右键,弹出右键菜单 Git软件安装后,会在右键菜单中增加两个菜单 Git GUI He…

Android Studio level过滤查看各个等级的日志

Android Studio level过滤查看各个等级的日志 旧版as可以在下方的日志输出框选择debug、info,warn、error日志,新版的需要通过在过滤框手动/联想输入 level:xxx,过滤相应等级的日志,如图: android studio/idea返回/前进…

【C语言基础】:深入理解指针(一)

文章目录 一、内存和地址1. 内存2. 如何理解编址 二、指针变量和地址2.1 取地址操作符(&)2.2 指针变量和解引用操作符(*)2.2.1 指针变量2.2.2 如何拆解指针变量2.2.3 解引用操作符 2.3 指针变量的大小 三、指针变量类型的意义3.1 指针的解引用3.2 指针 - 整数3.3 void*指针…