人工智能网络赛题训练(一)

今天学习2023年人工智能网络赛赛题

赛题一共有五个部分,8个任务。

任务一:人工智能基础环境搭建部署

在CentOS里面搭建环境,我打开VM新建一个CentOS系统发现我的客户机操作系统CPU被禁用了,然后在csdn里面查找解决办法在这里面寻找解决办法http://t.csdnimg.cn/rMcGl(也找了其他博主的文章)但是并没有解决问题,后来,我同学告诉我CentOS版本有问题,我又重新下载了一个2009年版本的镜像,这次安装成功了,然后我将Anacond环境拖了进去,目前还在配置环境中,下面的代码是我在Windows系统上PyCham中运行的。

 安装成功路

 正在读入Anacond环境

 

任务二:数据集加载及预处理

现将给定的数据集导入pycham中

然后开始编写代码

导入我们所需要的库pandas库负责数据的处理,re库负责正则表达式操作(正则表达大概就是字符串匹配、搜索替换、数据验证)

import pandas as pd
import re 

第一步现将数据集导入进去

data = pd.read_csv("D:\人工智能/2023省赛-网络赛-高职组\data/task2/task2.csv", dtype={'column_name': str}, low_memory=False)

第二步 统计非字母组合代码的样本个数

non_alpha_count = sum(1 for code in data['WORK_PROVINCE'] if not re.match('^[a-zA-Z]+$', str(code)))
print("非字母组合代码的样本个数:", non_alpha_count)

 首先使用列表推导式遍历 data['WORK_PROVINCE']中的每个元素,然后使用正则表达式re.math('^[a-zA-Z]+$',str(code))检查每个元素是否只包含字母,如果不是,就将其计数为1。最后,用sum()函数将所有计数相加,得到非字母组合代码的总数,并将其打印出来。

第三步 计算AVG_FLIGHT_COUNT列最大的20个数值的平均值

top_20_avg_flight_count = data['AVG_FLIGHT_COUNT'].nlargest(20).mean()
print("AVG_FLIGHT_COUNT列最大的20个数值的平均值:", top_20_avg_flight_count)

首先,使用nlargest(20)方法获取AVG_FLIGHT_COUNT列中最大的20个数值,然后使用mean()方法计算这些数值的平均值。最后,将结果打印出来.

任务三按照要求使用python编程对给定图片数据进行处理

第一步:先导入我们所需要的库

import cv2
import numpy as np

第二步:导入图片并将尺寸调整为宽650,高360的图片,在一步卡了很久,因为不管是在相对路径下还是绝对路径下图片都不能正常的读入,后来查找资料发现将图片放在全英文的文件夹中文件才能正常读取,所以我就把图片位置换到全英文的文件夹中

img = cv2.imread('D:/abcd/task3.jpg')
img_resized = cv2.resize(img, (650, 360))

第三步:将图片按列均分为2 等份然后截取右部分子区域作为新图像

img1 = img_resized[:, img_resized.shape[1]//2:]

第四步:将图片转换到YCrCb颜色空间并创建一个和img1_ycrcb同样尺寸的全黑图像命名为img3然后再遍历img1_ycrcb,记录其Cr分量在133至173之间,Cb分量在77至127之间的像素位,(遍历这个图片的每个像素的颜色值,并根据Cr和Cb分量来决定是否将对应位置的全黑图像像素值置为白色,这样做是对图像进行特定的颜色过滤或处理,例如提取特定颜色的区域或者进行图像分割等操作。)将img3对应像素位置的像素值置为白色

img1_ycrcb = cv2.cvtColor(img1, cv2.COLOR_BGR2YCrCb)
img3 = np.zeros_like(img1_ycrcb)
for i in range(img1_ycrcb.shape[0]):
    for j in range(img1_ycrcb.shape[1]):
        if 133 <= img1_ycrcb[i, j, 1] <= 173 and 77 <= img1_ycrcb[i, j, 2] <= 127:
            img3[i, j] = [255, 255, 255]

最后一步:显示img1和处理之后的img3,接下来就是把处理好的图片展示出来

# 显示img1和处理之后的img3
cv2.imshow('img1', img1)
cv2.imshow('img3', img3)
cv2.waitKey(0)
cv2.destroyAllWindows()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值