配准工具包 mermaid 的安装记录

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

git 下载包,注意 setup.py 有个 bug,加上逗号即可

1、创建环境

conda create --name mermaid python=3.8 pip
conda activate mermaid

2、有些包会出现问题,所以把容易出问题的包先手动安装上正确的版本

pip install torch==1.7.1+cu110 torchvision==0.8.2+cu110 -f https://download.pytorch.org/whl/torch_stable.html
# 防止出现“版本号不符合规范的问题”
pip uninstall setuptools
pip install setuptools==58.4.0

pip install -r requirements.txt

pip uninstall numpy
pip install numpy==1.21.5

3、最后安装包

cd mermaid
python setup.py install

4、ipython 版本与 python3.8 不兼容,重新安装一下

pip uninstall ipython
pip install ipython==8.12.0

您可能感兴趣的与本文相关的镜像

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

<think>嗯,用户询问的是无人机图像处理中的和裁剪方法。从引用内容来看,用户可能正在处理多期航拍影像的数据整合工作,需要解决图像之间的几何偏差问题。用户提到的"和裁剪"是典型的地理信息预处理流程,可能用于制作正射影像图或变化检测分析。 用户提供的三篇参考文献很有价值:第一篇强调了无人机影像的重要性[^1],第二篇系统介绍了图像处理流程[^2],第三篇则提供了具体的SIFT特征匹方法[^3]。这些恰好构成完整的技术路线:从问题背景到基础理论再到实现方案。 方面需要重点考虑: - 特征点匹的精度直接影响后续裁剪质量 - 不同地形(平原/山地)适用的特征提取算法不同 - 多光谱影像还需要波段的特殊处理 裁剪操作看似简单实则关键: - 用户可能忽略坐标系转换环节 - 批量处理时文件管理容易出错 - 边缘区域的拼接缝需要特殊处理 用户没有说明具体应用场景,但引用中多次提到农业应用[^2],推测可能是用于农田监测。这种情况下,可能需要特别关注作物生长季的影像时序问题,因为植被覆盖变化会影响特征点匹。 上次对话中用户提到"两次飞行的图像数据",这次问题应该延续该背景。因此重点应放在不同期影像的方案上,而不是单张影像处理。需要提醒用户注意光照条件差异带来的匹干扰,这在农业应用中尤为常见。 技术上备分三层回应:基础方法流程(满足即时需求)、进阶优化方案(预留扩展空间)、潜在问题预警(规避操作风险)。特别要强调裁剪环节必须在完成后进行,否则会导致地理坐标丢失。</think>以下是无人机图像与裁剪的详细方法指南,结合专业文献与实践经验: --- ### **一、图像方法** **核心目标**:对齐不同时间/角度拍摄的影像,消除几何偏差 **技术流程**: 1. **特征点检测** - 使用 **SIFT**(尺度不变特征变换)或 **SURF**(加速鲁棒特征)算法提取关键点 - 优势:对旋转、缩放、光照变化具有鲁棒性[^3] - 示例:`sift = cv2.SIFT_create(); keypoints, descriptors = sift.detectAndCompute(image, None)` 2. **特征匹** - **FLANN**(快速近似最近邻搜索)匹特征描述子 - 筛选策略: - **比值测试法**:保留最近邻与次近邻距离比 <0.7 的匹对 - **RANSAC**(随机抽样一致)剔除误匹点[^3] 3. **变换矩阵计算** - 通过匹点估计单应性矩阵 $H$: $$ \begin{bmatrix} x' \\ y' \\ 1 \end{bmatrix} = H \begin{bmatrix} x \\ y \\ 1 \end{bmatrix} = \begin{bmatrix} h_{11} & h_{12} & h_{13} \\ h_{21} & h_{22} & h_{23} \\ h_{31} & h_{32} & h_{33} \end{bmatrix} \begin{bmatrix} x \\ y \\ 1 \end{bmatrix} $$ - 使用OpenCV实现:`H, _ = cv2.findHomography(src_pts, dst_pts, cv2.RANSAC, 5.0)` 4. **重采样与融合** - 双线性/双三次插值进行图像变换 - 多波段影像需分通道处理以保持光谱一致性[^2] --- ### **二、图像裁剪方法** **应用场景**:提取研究区域(ROI)、去除边缘畸变、分割大范围影像 **关键技术**: 1. **地理坐标驱动裁剪** - 若影像含地理信息(如GeoTIFF): ```python from osgeo import gdal ds = gdal.Open("image.tif") # 根据经纬度范围计算像素坐标 ulx, uly = gdal.ApplyGeoTransform(inv_geotransform, minX, maxY) lrx, lry = gdal.ApplyGeoTransform(inv_geotransform, maxX, minY) # 执行裁剪 gdal.Translate("cropped.tif", ds, srcWin=[ulx, uly, width, height]) ``` 2. **特征边界裁剪** - 对后的影像: - 通过轮廓检测自动识别地块边界 - 使用多边形掩膜提取目标区域 ```python contours, _ = cv2.findContours(mask, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE) cv2.drawContours(image, [max_contour], -1, (0,255,0), thickness=cv2.FILLED) cropped = cv2.bitwise_and(image, mask) ``` 3. **规则网格裁剪** - 大区域影像分块处理: ```python tile_size = 512 # 像素 for y in range(0, height, tile_size): for x in range(0, width, tile_size): tile = image[y:y+tile_size, x:x+tile_size] # 保存分块结果 ``` --- ### **三、关键注意事项** 1. **精度验证** - 检查控制点残差:RMSE ≤ 1.5像素为合格 - 目视检查重叠区域地物连续性(如道路、田埂) 2. **裁剪边界处理** - 保留5~10像素缓冲带避免边缘信息损失 - 农业应用中需确保裁剪框包含完整田块[^2] 3. **自动化流程优化** ```mermaid graph LR A[原始影像] --> B[特征提取] B --> C[匹与变换] C --> D[影像] D --> E[ROI坐标计算] E --> F[批量裁剪] F --> G[输出分块] ``` --- ### **四、相关工具推荐** - **开源库**:OpenCV(特征匹)、GDAL(地理裁剪)、PyTorch(深度学习) - **软件**:Agisoft Metashape(自动空三)、QGIS(手动精校正) > **提示**:对农业无人机影像,建议优先采用**地理坐标裁剪法**,确保多期数据空间对齐[^2]。若处理RGB影像,可结合HSV色彩空间增强植被特征提取精度。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值