当前位置: 首页 > news >正文

【2024APMCM亚太杯A题】详细解题思路

A题 复杂场景下的水下图像增强研究

  • 解题思路
    • 问题一
      • 图像统计分析技术
        • 一、检测 偏色 的技术
        • 二、检测 弱光 的技术
        • 三、检测 模糊 的技术
    • 聚类算法
  • 问题二
  • 问题三
  • 问题四
  • 完整论文与代码

解题思路

在这里插入图片描述

问题一

问题 1:请使用类似上文提到的图像统计分析技术,对附件 1 提供的水下图像进行多角度分析。将附件 1 提供的图像分为偏色、弱光、模糊三类,并在“Answer.xls”附件中三个位置填写文件名,并说明这样分类的原因
在这里插入图片描述

图像统计分析技术

除了文中提到的直方图和边缘算子,以下是一些常见的图像统计分析技术,这些技术可用于对水下图像或其他图像进行深入分析:

  • 灰度共生矩阵(GLCM)
    用于分析图像的纹理特征,通过统计像素灰度值之间的空间关系提取特征,例如对比度、能量、熵和相关性。
  • 频域分析
    通过傅里叶变换将图像从空间域转换到频域,分析图像的频率分布,例如低频区域用于检测整体亮度分布,高频区域用于检测边缘和纹理。
  • 颜色空间转换与分析
    将图像从RGB空间转换到其他颜色空间(如HSV、Lab),分析亮度、饱和度和色调的分布,用于处理水下光照和色彩失真的问题。
  • 梯度计算
    利用梯度算子(如Sobel、Prewitt、Scharr)计算图像的梯度强度和方向,以检测边缘清晰度和形状特征。
  • 熵计算
    图像熵用于量化图像中信息的复杂度。熵越高,表示图像信息越丰富,随机性越高。
  • 小波变换
    通过小波分解图像,分析其不同尺度的细节和纹理特征,用于检测图像的细节信息和去噪处理。
  • 边缘分割和轮廓分析
    应用Canny、Laplacian等边缘检测算子,通过统计物体轮廓的长度、面积或形状,获取图像中目标的结构信息。
  • 光流分析
    用于动态图像或视频中,统计像素的运动信息(如方向和速度),评估水下物体移动的轨迹。
  • 直方图均衡化与统计
    分析图像亮度值分布,检查亮度均匀性并评估对比度调整的效果。
  • 图像特征点统计
    通过特征点检测算法(如SIFT、SURF、ORB)统计图像中的关键点密度和分布,用于评估图像质量或检测关键区域。
  • 噪声分布分析
    分析图像中的噪声类型(高斯噪声、椒盐噪声等)及其强度,确定去噪处理的必要性和方法。
  • 形态学分析
    使用数学形态学操作(如腐蚀、膨胀、开运算和闭运算)分析图像结构和目标物体的形态特征。
  • 亮度对比分析
    统计图像中明暗区域的分布比例,分析亮度对比度是否适合人眼感知。
一、检测 偏色 的技术

1.颜色直方图分析
统计不同通道(R、G、B或HSV空间中的H通道)的颜色分布,检查颜色是否集中在某一特定通道上。例如,偏蓝或偏绿色可能是水下图像常见的偏色情况。
2.颜色空间转换与分析
转换到Lab或YUV颜色空间,分析亮度(L通道)和色彩信息(a、b通道)的偏移程度。Lab颜色空间中的a、b分量可以直观反映色彩失衡。
3.白平衡检测
计算图像中灰度均衡性是否异常,例如通过灰度世界假设(Gray World Assumption)检测整体色彩是否失衡。
4.颜色饱和度检测
在HSV颜色空间中分析S通道分布。如果S值异常集中或过低,可能暗示偏色情况。

二、检测 弱光 的技术

1.亮度直方图分析
分析图像灰度分布或亮度分布(Y通道、L通道或HSV的V通道)。当亮度值集中在低范围时,可以判定图像为弱光。
2.对比度测量
使用亮度对比度公式(如对比度=亮度最大值与最小值的差值)检测整体对比度。弱光图像通常对比度较低。
3.熵计算
弱光图像的信息熵较低,因为暗区像素分布单一,图像信息不丰富。
4.伽马分布分析
检测亮度分布曲线是否偏向低值区域,低伽马值可能表明弱光问题。
5.动态范围分析
检查图像的动态范围(即亮度值从最低到最高的跨度)。弱光图像动态范围通常较窄。

三、检测 模糊 的技术

1.梯度分布统计
使用梯度算子(如Sobel、Prewitt)统计图像中梯度值的分布情况。模糊图像通常梯度强度较低,边缘模糊。
2.拉普拉斯方差分析
计算图像的拉普拉斯算子方差。如果方差值过低,说明图像的清晰度较差。
3.频域分析
对图像进行傅里叶变换,分析高频分量的分布。模糊图像高频成分衰减显著。
4.边缘检测结果统计
使用Canny或其他边缘检测算法统计边缘数量和清晰度。如果边缘数量明显减少或边缘较软,则可能是模糊图像。
5.对比度梯度分析(Contrast Gradient Analysis)
模糊图像的局部对比度梯度变化较小,清晰度低。
6.视觉感知清晰度模型(VSI)
通过视觉感知清晰度指数(Visual Saliency Index)分析图像模糊程度,模拟人眼感知。

聚类算法

将所有特征进行值计算出来,进行聚类算法。
在这里插入图片描述
在这里插入图片描述

问题二

基于问题 1 中提出的退化类型,利用问题中提供的水下成像模型,构建附有图像的水下场景图像退化模型。分析不同场景 [1] 拍摄的水下图像的退化原因(包括但不限于偏色、弱光等)。分析这些退化模型的相同点或不同点(例如,从颜色、光照、清晰度等角度进行分类)。

  1. 偏色
    偏色主要由水对不同波长光的吸收和散射导致。由于水对红光吸收更强、对蓝光吸收较弱,深水区域通常会出现偏蓝或偏绿色现象。
    原因分析:
    水深:光吸收随着水深增加,红光消失,绿光和蓝光主导。
    水体成分:悬浮颗粒和有机物会改变光的散射特性。
    环境光变化:水下环境光随光源类型、光照强度和方向变化。
  2. 弱光
    弱光由环境光随深度衰减和光散射引起,导致整体亮度降低。
    原因分析:
    光照强度不足:在深水或阴影区域,光线衰减较快。
    后向散射分量:增加了散射光线,导致环境光的有效亮度降低。
    光透射率变化:水体浑浊度降低了光传递到目标的能力。
  3. 模糊
    模糊通常是由前向散射引起的。光线被悬浮颗粒散射后进入成像系统,形成模糊的视觉效果。
    原因分析:
    悬浮颗粒的浓度:颗粒密度增加会导致更多的前向散射。
    物体与相机的距离:距离越远,散射效应越显著,导致图像模糊。
    在这里插入图片描述
    具体退化类型的影响可以通过调整参数进行模拟:
    1.偏色:在 J(x)中增加颜色吸收模型(对 R/G/B 三通道的光强分别进行非线性衰减)。
    在这里插入图片描述

2.弱光:降低环境光 B 的强度,同时调整透射率 t(x) 使整体亮度衰减。
弱光表现为整体亮度降低,常由环境光衰减、后向散射等引起。弱光退化可以通过调整环境光强度 B 和透射率 t(x) 来模拟。
在这里插入图片描述
3.模糊:加入基于前向散射的点扩散函数(PSF),模拟悬浮颗粒散射导致的模糊效果。
在这里插入图片描述

问题三

问题 3:基于问题 2 中建立的水下场景图像退化模型,提出针对单一场景(如偏色、模糊、弱光)量身定制的水下图像增强方法,并使用附件中提供的图像数据验证所提出的增强方法。将附件 2 中的测试图像的增强结果及其对应的评价指标纳入论文中,计算并呈现输出图像的 PSNR、UCIQE、UIQM 等评价指标,并填入“Answer.xls”中提供的附件 1 结果表格中。

增强方法:基于颜色校正与光照补偿的多阶段方法
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
偏色校正:

  • 使用光吸收补偿模型恢复不同波长的光信息。
  • 动态白平衡增强整体颜色均衡性。
    亮度补偿:
  • CLAHE 和伽马校正提高暗区域的亮度和对比度。
    视觉优化:
  • 高斯滤波器和 Retinex 进一步平滑颜色过渡,并增强细节。

问题四

现有的水下图像增强模型在不同场景下的建模适应性存在差异。请结合上述问题和附件中提供的图像,提出一种针对复杂场景的水下图像增强模型(例如非物理模型,可参考文献[2]-[5]),该模型应能够增强多种复杂场景下的水下图像退化问题。将附件2中测试图像的增强结果及其对应的评价指标纳入论文展示,计算并输出输出图像的PSNR、UCIQE、UIQM等评价指标,并填入“Answer.xls”中附件2结果表格中。

提出一种联合优化网络 (Joint Optimization Network, JONet),包括以下模块:
1.多通道特征提取模块(MCFE)
用于捕获不同通道的颜色、纹理和亮度特征。
2.全局与局部增强模块(GLE-LFE)
用于处理光照不均和局部模糊问题。
3.多任务损失函数(MTL)
联合优化图像的颜色校正、对比度增强和清晰度。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 训练数据:使用公开水下图像数据集(如 UIEB 数据集)和生成的合成退化图像。
  • 训练过程:
  • 数据增强:包括模拟偏色、弱光和模糊退化。
  • 优化器:使用 Adam 优化器,学习率设置为 10^{-4}。
  • 推理过程:输入退化图像,直接输出增强图像 I′(x)。
    在这里插入图片描述

完整论文与代码

完成解题思路,以及完整论文代码请看下方~

相关文章:

【2024APMCM亚太杯A题】详细解题思路

A题 复杂场景下的水下图像增强研究 解题思路问题一图像统计分析技术一、检测 偏色 的技术二、检测 弱光 的技术三、检测 模糊 的技术 聚类算法 问题二问题三问题四完整论文与代码 解题思路 问题一 问题 1:请使用类似上文提到的图像统计分析技术,对附件 …...

用 React18 构建Tic-Tac-Toe(井字棋)游戏

下面是一个完整的 Tic-Tac-Toe(井字棋)游戏的实现,用 React 构建。包括核心逻辑和组件分离,支持两人对战。 1. 初始化 React 项目: npx create-react-app tic-tac-toe cd tic-tac-toe2.文件结构 src/ ├── App.js…...

数据结构及算法--排序篇

在 C 语言中,可以通过嵌套循环和比较运算符来实现常见的排序算法,比如冒泡排序、选择排序或插入排序 目录 基础算法: 1.冒泡排序(Bubble Sort) 2.选择排序(Selection Sort) 3.插入排序&…...

泷羽sec学习打卡-网络七层杀伤链1

声明 学习视频来自B站UP主 泷羽sec,如涉及侵权马上删除文章 笔记的只是方便各位师傅学习知识,以下网站只涉及学习内容,其他的都与本人无关,切莫逾越法律红线,否则后果自负 关于蓝队基础的那些事儿-Base1 基本的企业网络架构是怎样的呢?高层管理IT管理影子IT中央技术…...

【QT】绘图

个人主页~ 绘图 一、绘图1、基础内容2、绘制形状(1)线段(2)矩形(3)圆形(4)文本(5)画笔(6)画刷 3、绘制图片(1)…...

vue3+elementui-plus el-dialog全局配置点击空白处不关闭弹窗

在与main.ts同级下的plugins文件夹(如果没有,新建一个)下建一个element.js文件(名字随便取) element.js文件内容如下: import ElementPlus from element-plus export default (app) > {console.log(app…...

Markdown语法说明

这里写自定义目录标题 欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants 创建一个自定义列表如何创建一个…...

推荐一款专业电脑护眼工具:CareUEyes Pro

CareUEyes Pro是一款非常好用的专业电脑护眼工具,软件小巧,界面简单,它可以自动过滤电脑屏幕的蓝光,让屏幕显示更加的不伤眼,更加舒适,有效保护你的眼睛,可以自定义调节屏幕的色调,从…...

对subprocess启动的子进程使用VSCode python debugger

文章目录 1 情况概要(和文件结构)2 具体设置和启动步骤2.1 具体配置Step 1 针对attach debugger到子进程Step 2 针对子进程的暂停(可选) Step 3 判断哪个进程id是需要的子进程 2.2 启动步骤和过程 3 其他问题解决3.13.2 ptrace: Operation not permitted…...

Django启用国际化支持(2)—实现界面内切换语言:activate()

文章目录 ⭐注意⭐1. 配置项目全局设置:启用国际化2. 编写视图函数3. 配置路由4. 界面演示5、扩展自动识别并切换到当前语言设置语言并保存到Session设置语言并保存到 Cookie ⭐注意⭐ 以下操作依赖于 Django 项目的国际化支持。如果你不清楚如何启用国际化功能&am…...

基于单片机的多功能跑步机控制系统

本设计基于单片机的一种多功能跑步机控制系统。该系统以STM32单片机为主控制器,由七个电路模块组成,分别是:单片机模块、电机控制模块、心率检测模块、音乐播放模块、液晶显示模块、语音控制模块、电源模块。其中,单片机模块是整个…...

VSCode 如何选中包含某个字母的所有行

文章目录 写在前面一、需求描述二、解决方法参考链接 写在前面 自己的测试环境:VSCode 一、需求描述 由于需要处理文件,需求是删除文件中包含某个字母的所有行。 二、解决方法 在 Visual Studio Code (VSCode) 中,如果你想选中所有包含某…...

CSRF保护--laravel进阶篇

laravel对csrf非常重视,专门针对csrf作出了很多的保护。如果您是刚刚接触laravel的路由不久,那么您可能对于web.php路由文件的post请求很疑惑,因为get请求很顺利,而post请求则可能会遭遇失败。其中一个失败的原因是由于laravel的c…...

计算机网络-理论部分(二):应用层

网络应用体系结构 Client-Server客户-服务器体系结构:如Web,FTP,Telnet等Peer-Peer:点对点P2P结构,如BitTorrent 应用层协议定义了: 交换的报文类型,请求or响应报文类型的语法字段的含义如何…...

k8s1.31版本最新版本集群使用容器镜像仓库Harbor

虚拟机 rocky9.4 linux master node01 node02 已部署k8s集群版本 1.31 方法 一 使用容器部署harbor (1) wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo yum -y install docker-ce systemctl enable docker…...

QT中使用json格式存取矩阵数据

在 Qt 中,可以通过 QJsonDocument 和 QJsonArray 方便地存取 JSON 格式的矩阵数据。以下是存储和读取矩阵数据的完整实现示例。 1. 矩阵存储为 JSON 将矩阵(QVector<QVector<double>> 或其他二维数组)存储为 JSON 文件。 实现代码 #include <QJsonArray&g…...

k8s 集群安装

安装rockylinux https://www.jianshu.com/p/a5fe20318b8e https://www.cnblogs.com/haoee/p/18290506 配置VirtualBox双网卡 https://www.cnblogs.com/ShineLeBlog/p/17580311.html https://zhuanlan.zhihu.com/p/341328334 https://blog.csdn.net/qq_36544785/article/deta…...

Elasticsearch面试内容整理-核心概念与数据模型

在 Elasticsearch 中,理解核心概念与数据模型是非常重要的,因为它们定义了数据如何被组织、存储和搜索。以下是 Elasticsearch 的核心概念和数据模型的详细介绍。 核心概念 集群(Cluster) ● 集群是由一个或多个节点组成的,用于共同存储和搜索数据的集合。...

Spring Boot实现License生成和校验

Spring Boot实现License生成和校验 证书准备 # 1. 生成私钥库 # validity&#xff1a;私钥的有效期&#xff08;天&#xff09; # alias&#xff1a;私钥别称 # keystore&#xff1a;私钥库文件名称&#xff08;生成在当前目录&#xff09; # storepass&#xff1a;私钥库密码…...

es写入磁盘的过程以及相关优化

数据写入到内存buffer同时写入到数据到translog buffer,这是为了防止数据不会丢失每隔1s数据从buffer中refresh到FileSystemCache中,生成segment文件,这是因为写入磁盘的过程相对耗时,借助FileSystemCache,一旦生成segment文件,就能通过索引查询到了refresh完,memory bu…...

YSYX学习记录(八)

C语言&#xff0c;练习0&#xff1a; 先创建一个文件夹&#xff0c;我用的是物理机&#xff1a; 安装build-essential 练习1&#xff1a; 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件&#xff0c;随机修改或删除一部分&#xff0c;之后…...

1688商品列表API与其他数据源的对接思路

将1688商品列表API与其他数据源对接时&#xff0c;需结合业务场景设计数据流转链路&#xff0c;重点关注数据格式兼容性、接口调用频率控制及数据一致性维护。以下是具体对接思路及关键技术点&#xff1a; 一、核心对接场景与目标 商品数据同步 场景&#xff1a;将1688商品信息…...

镜像里切换为普通用户

如果你登录远程虚拟机默认就是 root 用户&#xff0c;但你不希望用 root 权限运行 ns-3&#xff08;这是对的&#xff0c;ns3 工具会拒绝 root&#xff09;&#xff0c;你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。 一次性解决方案&#xff1a;创建非 roo…...

七、数据库的完整性

七、数据库的完整性 主要内容 7.1 数据库的完整性概述 7.2 实体完整性 7.3 参照完整性 7.4 用户定义的完整性 7.5 触发器 7.6 SQL Server中数据库完整性的实现 7.7 小结 7.1 数据库的完整性概述 数据库完整性的含义 正确性 指数据的合法性 有效性 指数据是否属于所定…...

无人机侦测与反制技术的进展与应用

国家电网无人机侦测与反制技术的进展与应用 引言 随着无人机&#xff08;无人驾驶飞行器&#xff0c;UAV&#xff09;技术的快速发展&#xff0c;其在商业、娱乐和军事领域的广泛应用带来了新的安全挑战。特别是对于关键基础设施如电力系统&#xff0c;无人机的“黑飞”&…...

AI+无人机如何守护濒危物种?YOLOv8实现95%精准识别

【导读】 野生动物监测在理解和保护生态系统中发挥着至关重要的作用。然而&#xff0c;传统的野生动物观察方法往往耗时耗力、成本高昂且范围有限。无人机的出现为野生动物监测提供了有前景的替代方案&#xff0c;能够实现大范围覆盖并远程采集数据。尽管具备这些优势&#xf…...

mac:大模型系列测试

0 MAC 前几天经过学生优惠以及国补17K入手了mac studio,然后这两天亲自测试其模型行运用能力如何&#xff0c;是否支持微调、推理速度等能力。下面进入正文。 1 mac 与 unsloth 按照下面的进行安装以及测试&#xff0c;是可以跑通文章里面的代码。训练速度也是很快的。 注意…...

《信号与系统》第 6 章 信号与系统的时域和频域特性

目录 6.0 引言 6.1 傅里叶变换的模和相位表示 6.2 线性时不变系统频率响应的模和相位表示 6.2.1 线性与非线性相位 6.2.2 群时延 6.2.3 对数模和相位图 6.3 理想频率选择性滤波器的时域特性 6.4 非理想滤波器的时域和频域特性讨论 6.5 一阶与二阶连续时间系统 6.5.1 …...

数据分析六部曲?

引言 上一章我们说到了数据分析六部曲&#xff0c;何谓六部曲呢&#xff1f; 其实啊&#xff0c;数据分析没那么难&#xff0c;只要掌握了下面这六个步骤&#xff0c;也就是数据分析六部曲&#xff0c;就算你是个啥都不懂的小白&#xff0c;也能慢慢上手做数据分析啦。 第一…...

手动给中文分词和 直接用神经网络RNN做有什么区别

手动分词和基于神经网络&#xff08;如 RNN&#xff09;的自动分词在原理、实现方式和效果上有显著差异&#xff0c;以下是核心对比&#xff1a; 1. 实现原理对比 对比维度手动分词&#xff08;规则 / 词典驱动&#xff09;神经网络 RNN 分词&#xff08;数据驱动&#xff09…...