You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python、OpenCV等IP库去除遥感图像中的亮非连续垂直条纹?

去除遥感图像中亮非连续垂直条纹的实现方案

当然可以用Python结合OpenCV或其他图像处理库去除这类条纹,下面是几种实用的落地方法:

1. 自适应中值滤波(针对性处理非连续条纹)

这种方法先定位亮条纹区域,再用中值滤波后的像素替换条纹,既能去掉条纹又能保留图像细节:

import cv2
import numpy as np

# 读取灰度图像
img = cv2.imread('remote_sense_img.jpg', 0)

# 用OTSU阈值自动定位亮条纹
_, stripe_mask = cv2.threshold(img, 0, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU)
# 垂直膨胀掩码,把非连续的条纹连接起来
vertical_kernel = np.ones((5, 1), np.uint8)
stripe_mask = cv2.dilate(stripe_mask, vertical_kernel, iterations=1)

# 对原图像做中值滤波,生成修复用的模板
filtered_img = cv2.medianBlur(img, 5)

# 用模板替换条纹区域
fixed_img = np.where(stripe_mask == 255, filtered_img, img)

# 保存处理后的图像
cv2.imwrite('fixed_median.jpg', fixed_img)

2. 频域滤波(傅里叶变换去除垂直高频干扰)

垂直条纹在频域中会呈现为垂直方向的亮线,通过傅里叶变换屏蔽这些高频分量即可消除条纹:

import cv2
import numpy as np

img = cv2.imread('remote_sense_img.jpg', 0)
# 傅里叶变换并将低频移到中心
fourier = np.fft.fft2(img)
fourier_shift = np.fft.fftshift(fourier)

rows, cols = img.shape
center_row, center_col = rows // 2, cols // 2

# 构建频域掩码,遮挡中心附近的垂直高频带(可根据条纹密度调整宽度)
mask = np.ones((rows, cols), np.uint8)
mask[:, center_col - 8:center_col + 8] = 0

# 应用掩码并逆傅里叶变换
fourier_masked = fourier_shift * mask
fourier_ishift = np.fft.ifftshift(fourier_masked)
fixed_img = np.fft.ifft2(fourier_ishift)
fixed_img = np.abs(fixed_img)

# 转换为8位图像并保存
fixed_img = np.uint8(fixed_img)
cv2.imwrite('fixed_fft.jpg', fixed_img)

3. 图像修复(Inpaint)

如果条纹区域边界清晰,用OpenCV的inpaint函数可以利用周围像素智能填充条纹区域:

import cv2
import numpy as np

# 读取彩色图像(也支持灰度图)
img = cv2.imread('remote_sense_img.jpg')
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

# 生成条纹掩码,阈值可根据图像亮度调整
_, stripe_mask = cv2.threshold(gray, 200, 255, cv2.THRESH_BINARY)
# 闭运算优化掩码,填补条纹间隙
stripe_mask = cv2.morphologyEx(stripe_mask, cv2.MORPH_CLOSE, np.ones((3, 3), np.uint8))

# 用TELEA算法修复图像(也可用NSRESTORE算法)
fixed_img = cv2.inpaint(img, stripe_mask, 3, cv2.INPAINT_TELEA)

cv2.imwrite('fixed_inpaint.jpg', fixed_img)

内容的提问来源于stack exchange,提问作者Atheer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 05:17:12