农田上方,一架无人机缓缓飞过。它像一只不知疲倦的“空中侦察兵”,在短短几十分钟内就能拍下几百张高清田间照片。过去,农民要顶着烈日一块田一块田地弯腰检查病虫害;如今,这位“侦察兵”把整个农田变成了可缩放、可分析的数字沙盘。但你可能会问:无人机拍下的照片,真的能直接拿来当“诊断报告”吗?答案是否定的——从一摞杂乱的航拍原图,到一份精准的病虫害地图,中间要经过一条完整的数据处理流水线。这条路,正是本文要带你走完的旅程。

岗位关联

掌握无人机图像的完整处理链路,是农业 AI 工程师的核心技能。它将直接决定病虫害检测系统的识别精度与落地效果,是精准农业从业者的必修课。

目录
  1. 可视化演示
  2. 航拍获取
  3. 正射校正
  4. 超分增强
  5. 目标检测
  6. 影像拼接
  7. 光谱分析
  8. AI 应用场景
  9. Python 演示
  10. 常见误区
  11. 面试题

可视化演示

演示正射校正与超分辨率增强、病虫害区域分割,以及多架次拼接与光谱分析。

本节配有交互动效(进入视口后自动加载,约 3KB)。

校正与增强 正射校正 超分增强 低清→高清 提升分辨率

航拍获取

想象你是一名侦察连连长,要摸清一大片森林里藏着多少“敌军”(病虫害)。你不可能自己扛着望远镜一棵树一棵树地看——那样太慢。于是你派出了无人机侦察兵。但侦察兵不能乱飞,它得有一张精确的“巡逻路线图”:先飞哪片区域,高度多少,相机朝什么角度,隔几秒拍一张。这些参数就是“航线规划”。如果航线规划得好,拍回来的照片张张清晰、重叠率合适,后续处理会非常顺畅;如果规划得随意,照片东一张西一张、高度不一,后面校正拼接时就麻烦了。

在技术层面,航线规划需要设定飞行高度、旁向重叠率与航向重叠率。一般来说,重叠率越高,后续影像拼接越容易,但飞行时间和存储成本也越高。常用的做法是把重叠率设置在 60% 到 80% 之间。影像采集时,相机的曝光时间、ISO 和白平衡等参数必须固定,否则同一块田在不同照片里的颜色不一致,会给后续的病虫害识别带来干扰。采集完成后,还需要做一次“质量筛选”——把模糊的、被云或镜头污点遮挡的照片剔除,只留下“体检合格”的影像进入下一道工序。

有了充足的合格航片,“侦察连”就完成了情报收集的第一步。但此时的照片还只是“摊开的拼图碎片”,要想看清整个战场的全貌,还需要把这些碎片严丝合缝地对齐拼好——这正是下一节“正射校正”要解决的问题。

覆盖面积=单张影像地面覆盖×影像数量×有效利用率\text{覆盖面积} = \text{单张影像地面覆盖} \times \text{影像数量} \times \text{有效利用率}
就像铺地砖,一块砖能盖住多大面积、总共多少块砖、有没有损耗,三者相乘才是最终铺好的面积。
  1. 单张影像地面覆盖取决于飞行高度与相机焦距,表示无人机一张照片能拍多大一片地
    Sfootprint=H×Wsensorf×HflightfS_{\text{footprint}} = \frac{H \times W_{\text{sensor}}}{f} \times \frac{H_{\text{flight}}}{f}
  2. 影像数量由航线长度、拍摄间隔和重叠率共同决定
    N=LG×(1−o)N = \frac{L}{G \times (1 - o)}
  3. 有效利用率剔除模糊、遮挡等不合格影像后剩余的比例
    η=NvalidNtotal\eta = \frac{N_{\text{valid}}}{N_{\text{total}}}

正射校正

侦察兵带回来的照片有一个天然的问题:因为无人机在空中会轻微晃动、相机镜头本身也有透视变形,所以照片里的田垄不是笔直的,房屋会歪斜,像一张被揉皱又被摊开的旧地图。正射校正要做的,就是把这张“皱地图”抹平,变成标准的“等高线地图”——每一块田、每一条路的位置都真实对应地球上的坐标。

正射校正的第一步是消除镜头畸变。广角镜头会把画面边缘的物体拉弯,这种畸变可以用相机标定得到的畸变参数来修正。第二步是坐标对齐,在影像中找到地面控制点或特征点,把这些点的像素坐标和真实世界坐标对应起来,计算出一个变换矩阵。第三步是重采样,根据变换矩阵把原始影像的每个像素“搬到”新位置上,生成一幅没有畸变的图像。这一步之所以叫“重采样”,是因为像素坐标经过变换后往往不是整数,需要用插值算法(如双线性插值)来确定新位置的像素值。

经过正射校正,几十张零散照片终于“各就各位”,拼成了一幅完整农田的透明底图。但问题来了——如果原始照片分辨率不够,花生米大小的虫卵或者叶片上的初期病斑,在影像上可能只有一两个像素,肉眼几乎看不见。这就像你拿到了一张整座城市的卫星图,却想看清街道上的一枚硬币。怎么办?下一节给“侦察兵”配一副放大镜。

[x′y′1]=H[xy1]\begin{bmatrix} x' \\ y' \\ 1 \end{bmatrix} = \mathbf{H} \begin{bmatrix} x \\ y \\ 1 \end{bmatrix}
这个矩阵就像“像素搬运工”,把原图中的每个点在数字世界里搬到一个新位置。你只需要知道几个参考点的对应关系,就能推算出整个搬运方案。
  1. 齐次坐标给二维坐标增加一个维度,方便用矩阵统一处理旋转和平移
    [xy1]\begin{bmatrix} x \\ y \\ 1 \end{bmatrix}
  2. 单应性矩阵 H一个 3×3 的矩阵,编码了旋转、缩放和透视变换的全部信息
    H=[h11h12h13h21h22h23h31h32h33]\mathbf{H} = \begin{bmatrix} h_{11} & h_{12} & h_{13} \\ h_{21} & h_{22} & h_{23} \\ h_{31} & h_{32} & h_{33} \end{bmatrix}
  3. 坐标映射将原始影像坐标 (x,y) 映射到校正后坐标 (x′,y′)
    x′=h11x+h12y+h13h31x+h32y+h33,y′=h21x+h22y+h23h31x+h32y+h33x' = \frac{h_{11}x + h_{12}y + h_{13}}{h_{31}x + h_{32}y + h_{33}}, \quad y' = \frac{h_{21}x + h_{22}y + h_{23}}{h_{31}x + h_{32}y + h_{33}}

超分增强

现在你手上有一张分辨率不足的照片,画面里有一片叶子,叶子上有一个针尖大小的黄斑——这很可能就是病虫害的初期信号,但在图像里它只占了 2×2 个像素,模糊得像一团雾。超分辨率增强(超分)要做的,就是用算法“脑补”出这些像素间缺失的细节,把 2×2 的模糊点变成 8×8 的清晰病斑轮廓。它的原理,就像刑侦画像师根据一张模糊监控截图画出嫌疑人清晰五官——不是凭空捏造,而是基于大量真实样本学到的规律来推测细节。

在技术实现上,现代超分模型多基于深度学习,核心思想是学习低分辨率图像到高分辨率图像之间的映射关系。以 SRCNN(超分辨率卷积神经网络)为例,输入一张低分辨率图像,先通过卷积层提取特征,再经过非线性映射和重建层,输出一张高分辨率图像。损失函数通常采用均方误差(MSE),即让输出图像与真实高分辨率图像之间的像素差尽量小。训练数据是从高分辨率图上做降采样得到的低分辨率图,让模型学会“由模糊到清晰”的逆过程。

有了超分增强的“放大镜”,藏在像素里的病斑终于现出了原形。但仅仅“看得清”还不够——我们还需要让 AI 自动识别出“哪里有病虫害”。这就需要用到目标检测技术,它就像是给侦察兵装上了一个会自动报警的电子哨兵。

L(θ)=1n∑i=1n∥fθ(Ilow(i))−Ihigh(i)∥2L(\theta) = \frac{1}{n} \sum_{i=1}^{n} \left\| f_{\theta}(I_{\text{low}}^{(i)}) - I_{\text{high}}^{(i)} \right\|^2
这个公式衡量的是“画师画出的画像”与“真实照片”之间有多大差距。差距越小,说明画师越厉害。
  1. 低分辨率输入原始无人机影像被缩小后的模糊版本
    IlowI_{\text{low}}
  2. 超分模型输出模型根据低分辨率图生成的“清晰猜测图”
    fθ(Ilow)f_{\theta}(I_{\text{low}})
  3. 真实高分辨率图作为“标准答案”的清晰原图
    IhighI_{\text{high}}
  4. 均方误差损失统计所有像素差距的平方均值,训练时让这个值降到最低
    1n∑i=1n∥⋅∥2\frac{1}{n}\sum_{i=1}^{n}\left\| \cdot \right\|^2

目标检测

超分增强后的图像已经足够清晰,现在需要回答最关键的问题:这片叶子上有没有病虫害?病斑在哪里?目标检测技术就像给你配了一个“电子哨兵”——它在图像里自上而下、从左到右地扫描每一个区域,每当发现可疑的“病斑”或“害虫”形态,就果断画个框框出来,并贴上标签:“这是稻瘟病”“这是棉铃虫”。过去,这个工作靠植保专家肉眼完成,一个人看 1000 张航拍图要一整天;现在,AI 检测模型几秒钟就能完成,还能保持稳定的注意力,绝不疲倦。

目标检测的主流方法是基于深度学习的卷积神经网络(CNN)检测器。以 YOLO(You Only Look Once)系列为代表:它把整张图像划分成 S×S 的网格,每个网格负责预测中心点落在自己内部的物体。对每个网格,模型输出若干个候选框,每个候选框包含中心坐标、宽高、置信度和类别概率。训练时通过损失函数把“预测框与真实框的差异”降到最小;推理时通过非极大值抑制(NMS)移除重叠的冗余框。最终输出的是带有类别标签和置信度分数的检测框。

电子哨兵虽然能在一张图上精准定位病斑,可它看到的只是“一块田”的一部分。无人机飞一个架次只覆盖几十亩地,一块几百亩的农田需要多个架次反复飞行。那怎么把这些分散的“局部地图”拼成一张完整的“全区作战图”呢?这就要说到影像拼接技术了。

Confidence=P(object)×IoUpredtruth\text{Confidence} = P(\text{object}) \times \text{IoU}_{\text{pred}}^{\text{truth}}
置信度 = “框里真有东西的概率 × 预测框与真实框的重合程度”。两个条件都高,才会给高置信度。
  1. 网格划分把整张图切成 S×S 个小格子,每个格子负责“管好自己的地盘”
    S×SS \times S
  2. 物体概率格子内存在目标物体的概率
    P(object)P(\text{object})
  3. 交并比(IoU)预测框与真实框重叠面积除以并集面积,衡量框得准不准
    IoU=Area of OverlapArea of Union\text{IoU} = \frac{\text{Area of Overlap}}{\text{Area of Union}}
  4. 候选框置信度综合“有无物体”与“框得准不准”两者的总评分
    Confidence=P(object)×IoU\text{Confidence} = P(\text{object}) \times \text{IoU}

影像拼接

你在拼一幅巨型拼图,每一张航拍图就是一个拼图块。但这幅拼图有几百块,而且每一块之间都有重叠区域,形状还各不相同。影像拼接的任务,就是找出相邻图片之间的“吻合点”,把所有拼图块严丝合缝地粘在一起,最终形成一张没有接缝的农田全景图。这个过程就像用 GPS 导航时系统把不同路段的地图自动拼成一张连续的地图——你丝毫感觉不到“这里是两个图拼出来的”。

影像拼接的第一步是特征匹配。算法会在每张图中提取出角点、纹理特征等“地标”(如田埂的交叉点、灌渠的拐角),然后在相邻图像中寻找相似的地标点对。第二步是图像融合,根据匹配点计算变换关系,将相邻图像映射到同一个坐标系下,并对重叠区域的像素做加权平均(如渐入渐出法),消除接缝处的亮度跳变。第三步是全局优化,由于拼接是逐对进行的,误差会累积(第一张和第二张差 1 像素,第二张和第三张又差 1 像素,拼到第一百张时可能差出几十像素),所以需要用光束法平差(Bundle Adjustment)来同时调整所有图像的位姿,让全局误差最小。

全景图终于拼出来了——整个农田一览无余,病斑分布也标记得清清楚楚。但病虫害的早期发现,往往不仅靠“看形状”,还要靠“看颜色”。有些病害早期叶片并没有明显的黄斑或虫眼,但叶片内部的光合作用效率已经开始下降,这在肉眼可见的普通照片上根本无法察觉。要捕捉这种“隐形信号”,得靠最后一招:光谱分析。

E=∑(i,j)∈C∥Pj−HijPi∥2E = \sum_{(i,j) \in \mathcal{C}} \left\| \mathbf{P}_j - \mathbf{H}_{ij}\mathbf{P}_i \right\|^2
这就像同时把一百张照片的位置都微调一遍,让所有相邻照片之间的衔接处都尽量吻合,而不是一对一对地凑合。
  1. 匹配点对集合所有相邻图像之间找到的对应特征点对
    C={(i,j)}\mathcal{C} = \{(i,j)\}
  2. 特征点在各自图中的位置同一个地物在图像 i 和图像 j 中的像素坐标
    Pi,Pj\mathbf{P}_i, \mathbf{P}_j
  3. 图像间变换关系把图像 i 的坐标映射到图像 j 坐标系的矩阵
    Hij\mathbf{H}_{ij}
  4. 重投影误差用矩阵变换预测的位置与真实匹配位置的差距,全局优化就是让所有差距的平方和最小
    ∑∥⋅∥2\sum \left\| \cdot \right\|^2

光谱分析

如果说目标检测是为侦察兵配上了“高倍望远镜”,那光谱分析就是给它换上了一副“透视镜”。健康的叶子与生病的叶子,在特定波段(尤其是近红外)的反射特性存在显著差异。病虫害导致叶绿素减少、细胞结构破损,叶片对近红外光的反射率明显下降。这种差异在肉眼可见光照片上可能微乎其微,但在多光谱相机拍到的数据中却是一目了然的“生命体征”。

利用多光谱数据计算植被指数,是光谱分析最常用的手法。归一化差值植被指数(NDVI)就是最经典的例子:它将近红外波段(NIR)和红光波段(RED)的反射率做归一化运算。健康植被叶绿素旺盛,对红光吸收强、对近红外反射强,NDVI 值就高;受害植物则相反,NDVI 值明显降低。农业技术员通过生成整片农田的 NDVI 分布图,可以快速锁定“亚健康”区域,实现比肉眼检查早 3 到 7 天的早期预警。

从“侦察兵”起飞拍下第一张照片,到 NDVI 营养地图导出最后一张报告,一条完整的无人机图像处理链路到这里就闭环了。每一环节都像流水线上的一环:航拍获取是“原材料采购”,正射校正是“零件整形”,超分增强是“显微镜质检”,目标检测是“自动分拣”,影像拼接是“整机装配”,光谱分析是“出厂体检”。一环扣一环,任何一环出了问题,都会影响最终诊断的可靠性。这就是无人机图像在病虫害检测中的完整价值链。

NDVI=NIR−REDNIR+RED\text{NDVI} = \frac{NIR - RED}{NIR + RED}
这就像给植物的“面色”打分:红光吸收多、近红外反射强就算“红光满面”(健康);两者都弱就是“面色蜡黄”(亚健康)。NDVI 值域在 -1 到 1 之间,值越高代表植被越健康。
  1. 近红外反射率植物叶片在近红外波段的反射强度,健康植被中细胞结构越完整反射越强
    NIRNIR
  2. 红光反射率叶片在红光波段的反射强度,健康叶片因叶绿素吸收呈现较低值
    REDRED
  3. 差值归一化两项之差除以两项之和,消除光照亮度差异的影响,只保留植被本身的光谱签名
    NIR−REDNIR+RED\frac{NIR - RED}{NIR + RED}
  4. NDVI 值域与解读值越高越健康,值偏低则提示叶片受损或营养失调
    −1≤NDVI≤1-1 \leq NDVI \leq 1

AI 应用场景

场景一:千亩稻田的病虫害早期预警

阶段:数据采集 → 影像预处理 → 模型推断 → 决策输出

解决的问题:传统人工巡田每人每天最多检查 80 亩,且水稻分蘖期病虫害初期症状肉眼难辨,等黄斑显露往往已错过最佳防治窗口(通常仅 3 到 5 天)。无人机搭载多光谱相机 + 正射校正 + NDVI 分析,可在 2 小时内完成千亩稻田扫描并输出异常区域热力图,将早期发现时间提前 7 天。

具体案例:江苏某智慧农业示范园,每周用大疆 M300 多光谱版执行一次巡田任务。图像经 Pix4D 正射拼接后输入 YOLO-v5 检测模型(仅针对稻飞虱与稻瘟病),识别精度达到 91.2%,NDVI 异常区与人工植保站复核结果一致率达 88%。据此实施精准喷药,农药用量减少 35%。

场景二:果园病虫害的“单株级”识别与处方图生成

阶段:高重叠率航拍 → 超分增强 → 单株分割 → 处方图输出

解决的问题:苹果园褐斑病早期仅在个别叶片上出现小斑点,传统人工巡检难以及时发现,且无法定位到具体植株。通过密集航拍(重叠率 85% 以上)+ 超分辨率增强 + 目标检测,可输出“单株级病虫害处方图”,指导植保无人机定点施药。

具体案例:山东烟台某苹果园,利用超分模型将航拍图从 720p 提升至 4K 等效分辨率后,YOLO 检测模型成功识别出直径仅 3mm 的早期褐斑病病斑。系统输出精准施药处方图,使施药靶标精准度从“整园喷洒”提升到“单株点喷”,全年综合防治成本降低 28%。

Python 演示

python96 行
# 无人机图像病虫害检测核心流程演示(简化版)# 包含:NDVI计算 + 简单阈值分割 + 病斑统计import mathimport random  def generate_fake_multispectral(width=40, height=30, sick_ratio=0.15):    """生成模拟的无人机多光谱影像数据(NIR与RED波段)"""    nir = []    red = []    random.seed(42)    for i in range(height):        nir_row = []        red_row = []        for j in range(width):            is_sick = random.random() < sick_ratio            if is_sick:                nir_row.append(0.25 + random.random() * 0.15)   # 病叶NIR低                red_row.append(0.28 + random.random() * 0.12)   # 病叶RED稍高            else:                nir_row.append(0.55 + random.random() * 0.25)   # 健叶NIR高                red_row.append(0.08 + random.random() * 0.10)   # 健叶RED低        nir.append(nir_row)        red.append(red_row)    return nir, red  def compute_ndvi(nir, red):    """计算归一化差值植被指数"""    h = len(nir)    w = len(nir[0])    ndvi = []    for i in range(h):        row = []        for j in range(w):            n = nir[i][j]            r = red[i][j]            val = (n - r) / (n + r + 1e-6)   # 加极小值防除零            row.append(val)        ndvi.append(row)    return ndvi  def detect_sick_regions(ndvi, threshold=0.35):    """根据NDVI阈值检测疑似病虫害区域"""    h = len(ndvi)    w = len(ndvi[0])    sick_pixels = 0    total_pixels = h * w    for i in range(h):        for j in range(w):            if ndvi[i][j] < threshold:                sick_pixels += 1    return sick_pixels / total_pixels  def detect_sick_regions_oop(ndvi, threshold=0.35):    """基于阈值分割的病斑区域统计(OOP版本)"""    h = len(ndvi)    w = len(ndvi[0])    sick_count = 0    total_count = h * w    for i in range(h):        for j in range(w):            if ndvi[i][j] < threshold:                sick_count += 1    return sick_count / total_count  def main():    print("=== 无人机图像病虫害检测流程 ===")    nir, red = generate_fake_multispectral()    ndvi = compute_ndvi(nir, red)     ratio_func = detect_sick_regions(ndvi, threshold=0.35)    ratio_oop = detect_sick_regions_oop(ndvi, threshold=0.35)     # 模拟正射校正拼接后的整图统计    total_ndvi = sum(sum(row) for row in ndvi) / (len(ndvi) * len(ndvi[0]))    print(f"整图平均NDVI: {total_ndvi:.3f}")    print(f"疑似病虫害区域占比(函数式): {ratio_func * 100:.1f}%")    print(f"疑似病虫害区域占比(OOP式): {ratio_oop * 100:.1f}%")     # 超分增强模拟:对低NDVI区域做插值放大标记    print("\n超分增强:标记病斑高风险网格...")    for i in range(0, len(ndvi), 5):        for j in range(0, len(ndvi[0]), 5):            block_avg = sum(ndvi[x][y] for x in range(i, min(i+5, len(ndvi)))                            for y in range(j, min(j+5, len(ndvi[0])))) / 25            if block_avg < 0.35:                print(f"  [{i:2d},{j:2d}] NDVI={block_avg:.3f} -> 建议人工复查")    print("\n流程完成!可用于指导精准喷药决策。")  if __name__ == "__main__":    main()
目的:模拟无人机多光谱影像从 NDVI 计算到疑似病虫害区域占比统计的完整流程,演示文章所述光谱分析的核心算法逻辑。
  1. generate_fake_multispectral(width=40, height=30, sick_ratio=0.15)生成模拟的多光谱影像数据,sick_ratio 模拟田间发病比例
  2. compute_ndvi(nir, red)逐像素计算 NDVI 值,(n-r)/(n+r+1e-6) 是 NDVI 的标准化公式,加 1e-6 防止除零
  3. val = (n - r) / (n + r + 1e-6)NDVI 公式与“归一化”的核心思想:消除光照差异,只看波段比值
  4. detect_sick_regions(ndvi, threshold=0.35)阈值分割算法,NDVI 低于 0.35 的像素判定为疑似病斑
  5. sick_pixels / total_pixels计算病斑面积占比,这是植保中的“病情指数”雏形
  6. main()函数式封装并执行完整流程,模拟从“航拍到诊断”的输出

常见误区

误区“无人机航拍照片就是普通照片,直接拿来做目标检测训练不就行了吗?”

正解直接使用原始航拍图训练模型会导致灾难性结果。航拍图存在镜头畸变、投影变形、景深不均等问题,同一块田在不同架次的照片中颜色和尺度都不同,模型学到的是“畸变特征”而非“病虫害特征”。必须经过正射校正和辐射校正,让影像进入统一的几何与色彩空间后再建模,精度才会有保障。

为何常见:由于日常用手机拍照所见即所得,人们默认“相机拍到的就是真实的”,忽视了航拍成像中复杂的几何过程。

误区“超分不就是把图放大吗?用 Photoshop 的放大算法不也一样?”

正解传统插值放大(如双线性)只是补点,细节信息完全没有增加,只是像素变得更多了而已。深度超分模型通过学习海量低分辨率-高分辨率配对数据,能真正“重建”出原本丢失的纹理细节,比如叶片上的微小病斑。二者的本质区别在于:传统插值是“机械填色”,深度超分是“数据驱动的质感生成”。

为何常见:大家熟悉 PS 的放大功能,误以为所有超分技术都只是插值;没意识到数据驱动能从统计规律中“无中生有”地补充细节。

误区“NDVI < 0.3 就是病害,NDVI > 0.8 就绝对健康,不用再看了。”

正解NDVI 是“健康相关性指标”而非“健康判定标准”。NDVI 过低可能是病虫害,也可能是水淹、缺肥、土壤盐碱化。NDVI 过高也不一定代表健康——水稻抽穗期的 NDVI 反而会因冠层结构变化而下降。正确的做法是结合时间序列 NDVI 和地面抽样验证,对异常区域做多元化诊断。

为何常见:人们在接触量化指标时容易陷入“阈值崇拜”,希望用一个简单数值替代复杂的专业判断。

误区“模型检测出 100 个病斑框,比检测出 20 个框的那块田一定病得更重。”

正解检测框数量与飞行高度、图像重叠率、模型置信度阈值设置都有关系。同一块田,飞得低、边框置信度调低,检测出的框就会变多。真正科学的做法是用“病斑面积占比”或“患病叶片指数”作为量化指标,而不是简单数框的个数。

为何常见:人们习惯用“数量越多越严重”的直观思维,忽略了影像采集参数和模型设置这些干扰因素。

误区“拼接就是让图片接缝小一点、看起来更美观,对检测结果影响不大。”

正解拼接质量直接影响后续所有定量分析。如果拼图接缝处出现重影,目标检测模型会在重影区域产生大量假阳性框;如果几何对齐累计误差超过 1 米,生成的病虫害分布图在田间的实际位置就会偏离,喷药无人机按图作业时可能把药打偏到健康区域。全局光束法平差的真正价值是控制累积误差,确保空间位置的精准。

为何常见:人们把影像拼接理解为“图像处理的美化操作”,没有意识到它对“空间决策精度”的决定性影响。

面试题

Q1. 无人机病虫害检测中,正射校正主要解决什么核心问题?

单选题 · easy

  • A.提高图像色彩饱和度
  • B.消除几何畸变并统一坐标← 正确答案
  • C.增强图像边缘锐度
  • D.压缩图像文件大小

答案:B。正射校正的目标是把带有透视变形和镜头畸变的航拍图矫正为符合真实地理坐标的正射影像。它处理的是“几何位置”问题,而非色彩、清晰度或存储问题,因此选 B。

Q2. NDVI 指数的值域范围是多少?

单选题 · easy

  • A.0 到 1
  • B.-1 到 1← 正确答案
  • C.0 到 255
  • D.-∞ 到 +∞

答案:B。NDVI = (NIR−RED)/(NIR+RED)。因为 NIR 和 RED 都是非负反射率,分子绝对值不会超过分母,所以 NDVI 被限制在 -1 到 1 之间。水体的 NDVI 常为负值,健康植被通常在 0.6 以上。

Q3. 超分辨率增强与普通插值放大的本质差异是什么?

单选题 · mid

  • A.超分输出的图片像素更多
  • B.超分用数据驱动方式重建高频细节← 正确答案
  • C.超分处理速度更快
  • D.超分不需要训练数据

答案:B。插值放大只是机械地填补像素值,不增加真实信息;深度超分通过大量低分辨率-高分辨率配对数据学习映射,能够重建图像中原本丢失的纹理细节,相当于“脑补”出真实存在的细节。这正是它与传统插值的分水岭。

Q4. YOLO 系列目标检测模型的输出不包括以下哪一项?

单选题 · mid

  • A.边界框中心坐标
  • B.边界框宽高
  • C.像素级分割掩码← 正确答案
  • D.类别置信度

答案:C。YOLO 输出的是候选框的中心坐标、宽高和类别置信度,属于“框级”检测。像素级分割掩码是语义分割模型(如 U-Net)的输出,YOLO 不生成像素级掩码。注意区分“目标检测”与“图像分割”两个不同任务。

Q5. 影像拼接中,光束法平差(Bundle Adjustment)的主要作用是?

单选题 · mid

  • A.消除单张图像的镜头畸变
  • B.全局优化所有图像的位姿以减少累计误差← 正确答案
  • C.对重叠区域做颜色融合
  • D.提高单张图像的分辨率

答案:B。逐对拼接会让误差逐张累积——第 1 张到第 2 张差 1 像素,第 2 张到第 3 张又差 1 像素,拼到第 100 张就偏出 100 像素。光束法平差同时调整所有图像的位置姿态,让全局重投影误差最小,是保证长序列拼接精度的关键。

Q6. 以下哪些属于无人机航拍影像质量筛选时需要剔除的影像?

多选题 · mid

  • A.对焦模糊的影像← 正确答案
  • B.镜头被水滴遮挡的影像← 正确答案
  • C.曝光参数与其他影像一致的影像
  • D.因风速导致的大幅倾斜画面← 正确答案

答案:ABD。模糊、遮挡和极端倾斜都会严重影响后续的拼接与检测精度,需要剔除。C 选项“曝光参数一致”恰恰是理想情况,属于需要保留的合格影像,因此不选。

Q7. 某无人机航拍任务中,单张影像地面覆盖面积 500m²,共拍摄 200 张影像,有效利用率 80%,则有效覆盖总面积是多少?

单选题 · hard

  • A.50000 m²
  • B.60000 m²
  • C.80000 m²← 正确答案
  • D.100000 m²

答案:C。有效覆盖面积 = 单张覆盖 × 影像数量 × 有效利用率 = 500 × 200 × 0.8 = 80000 m²。这个计算对应正射校正前的数据普查——只有合格影像才能进入后续处理链路。

Q8. 关于 NDVI 在病虫害检测中的应用,下列说法正确的有?

多选题 · hard

  • A.NDVI 值显著下降可能提示叶片受损← 正确答案
  • B.NDVI 异常区域的确定无需地面验证
  • C.NDVI 可用于生成田间健康分布图← 正确答案
  • D.NDVI 能反映植株内部的害虫数量

答案:AC。A 对,NDVI 下降反映叶绿素和细胞结构受损。C 对,NDVI 分布图是精准农业的基础图层。B 错,NDVI 异常需要地面抽样复核才能判定病因。D 错,NDVI 是光谱指标,无法直接反映害虫数量。

Q9. 无人机航线规划中,重叠率的主要作用是什么?

单选题 · easy

  • A.提高图像分辨率
  • B.保证相邻影像可通过特征匹配拼接← 正确答案
  • C.减少飞行时间
  • D.提高 NDVI 计算精度

答案:B。重叠率保证相邻影像之间有足够的公共区域,供特征匹配算法找到对应点,从而实现拼接。没有足够的重叠率,影像之间找不到共同地物,拼接就会失败。常用重叠率在 60% 到 80% 之间。

Q10. 以下用于病虫害检测的无人机图像处理链路中,顺序安排合理的有?

多选题 · hard

  • A.采集 → 正射校正 → 超分增强 → 目标检测← 正确答案
  • B.采集 → 超分增强 → 正射校正 → 目标检测
  • C.采集 → 正射校正 → 影像拼接 → 光谱分析← 正确答案
  • D.采集 → 目标检测 → 正射校正 → 影像拼接

答案:AC。合理的链路必须“先校正再分析”。正射校正是几何基础,超分增强提升清晰度,二者顺序可互换(A 的流程很常见),但目标检测必须在校正和增强之后。C 流程也正确:多光谱影像先校正再拼接,最后做 NDVI 分析。B 中先增强再校正可能导致畸变被“增强”放大;D 中先检测后校正,检测结果基于畸变图像,坐标位置不可靠。