目录
- 第一步:装编译器
- 第二步:装Anaconda
- 第三步:在miniconda中装特定版本的python
- 第四步:在miniconda中安装第三方库
- 第五步:检验是否成功运行
- 结果(1)变量浏览器
- 结果(2)绘图看板
- 结果(3)控制台的输出
第一步:装编译器
第一步安装spyder6:spyder6,以前我用的是PyCharm,试用期过了换工具了。

第二步:装Anaconda
第二步安装Anaconda:便捷获取包、管理第三方库的工具,我下载的是miniconda

第三步:在miniconda中装特定版本的python
第三步,因为spyder6需要特定版本的python才能运行,直接在miniconda中安装。

第四步:在miniconda中安装第三方库
要注意一点,就是python之后用到的第三方库,无论用cmd还是conda安装,都要以“管理员权限”运行。

可以看到安装spyder kernel之后编译环境就变成了Miniconda里的python

运行一个简单图js像特征提取的代码会发现报错没有module,这是因为没有安装第三方库

然后我尝试直接在miniconda中输入pip install opencv-python,

然后安装pip install scikit-image:

第五步:检验是否成功运行
成功之后返回到spyder再次运行代码,观察是否还会报错njso module
简单的图像特征提取:(提取小行星vesta图像特征,图像来源于PDS)
# -*- coding: utf-8 -*-
"""
Created on Sun May 25 19:13:37 2025
@author: galax
"""
# 导入必要的库
import cv2
import numpy as np
from skimage.feature import graycomatrix, graycoprops
from matplotlib import pyplot as plt
# 读取PNG图像
#"C:\Users\galax\Desktop\数据Data\p\Vesta03.png"
#image_path = '/kaggle/input/asteroids-pngtest/Bennu02.png'
phpimage_path = r'C:\Users\galax\Desktop\Data\p\Vesta03.png'
image = cv2.imread(image_path, cv2.IMREAD_UNCHANGED)
# 检查图像是否加载成功
if image is None:
raise ValueError("无法加载图像!请检查文件路径")
# 显示原始图像信息
print("[调试信息] 原始图像形状:", image.shape) # 应显示 (1024, 1024)
print("[调试信息] 图像数据类型:", image.dtype) # 应显示 uint8
# 灰度图像专用处理流程 ---------------------------------------------------
# 直接使用原始灰度图像(无需转换)
if len(image.shape) == 2:
gray = image # 直接使用原始灰度数据
print("[调试信息] 检测到灰度图像,跳过通道转换")
else:
# 如果意外出现彩色图像则转换为灰度
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
# 01: 提取颜色特征(灰度直方图)
color_hist = cv2.calcHist([gray], [0], None, [256], [0, 256]) # 单通道直方图
color_hist = cv2.normalize(color_hist, None).flatten() # 修正归一化参数
# 02:提取纹理特征(GLCM)
glcm = graycomatrix(gray,
distances=[1],
angles=[0, np.pi/4, np.pi/2], # 增加角度多样性
levels=256,
symmetric=True,
normed=True)
contrast = np.mean(graycoprops(glcm, 'contrast'))
homogeneity = np.mean(graycoprops(glcm, 'homogeneity'))
energy = np.mean(graycoprops(glcm, 'energy'))
# 03: 优化边缘检测参数
edges = cv2.Canny(gray, threshold1=50, threshold2=150) # 调整阈值适应太空图像
# 可视化设置
plt.figure(figsize=(15, 5))
# 原始灰度图像
plt.subplot(131)
plt.imshow(gray, cmap='gray')
plt.title('原始灰度图像')
# 颜色直方图(灰度分布)
plt.subplot(132)
plt.bar(range(256), color_hist.ravel()[:256], width=1.0) # 显示前256个bin
plt.title('灰度直方图分布php')
plt.xlim([0, 256])
# 边缘检测结果
plt.subplot(133)
plt.imshow(edges, cmap='gray')
plt.title('优化边缘检测')
plt.tight_layout()
plt.show()
# 特征输出
print("\n特征提取结果:")
print(f"直方图维度: {len(color_hist)} (0-255灰度级分布)")
print(f"纹理特征 - 平均对比度: {contrast:.2f}")
print(f" 平均同质性: {homogeneity:.2f}")
print(f" 平均能量: {energy:.2f}")
print(f"边缘特征 - 边缘像素占比: {np.mean(edges > 0)*100:.1f}%")
在spyder6中的运行结果
结果(1)变量浏览器
可以看到提取出的特征向量

可以点开,很方便:

结果(2)绘图看板
第一张是原始灰度图像,第二张是灰度直方图分布,第三张是优化边缘检测。

结果(3)控制台的输出

下一步是搭建神经网络,尝试安装CPU版本的Pytorch在本地调试,最后的GPU加速放到云端。
到此这篇关于python编译环境配置的实现步骤的文章就介绍到这了,更多相关python编译环境配置内容请搜索编程客栈(www.devze.com)以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程客栈(wwwGOvJNajyDK.cppcns.com)!
加载中,请稍侯......
精彩评论