将CSV文件转换为灰度图像

from PIL import Image
import pandas as pd
import numpy as np


data_path = r'E:\硕士\东南大学齿轮箱数据\gearset\Health_30_2.csv'
data = pd.read_csv(data_path, delimiter='\t')
data = data.values

image_array = data[:1024]
array1 = []
for i, _ in enumerate(image_array):
    # print(image_array[i])
    array1.append(image_array[i][:8])

print(type(array1), type(image_array))
array1 = np.array(array1)
array1 *= 255.0  # 变换为0-255的灰度值
im = Image.fromarray(array1)
im = im.convert('L')  # 这样才能转为灰度图,如果是彩色图则改L为‘RGB’
im = im.resize(size=(32,32))
im.show()

 

 

上图是数据集的具体格式,数据与数据之前的空格是制表符 \t 

 这是我打印image_array数据的内容,数据前八个是有具体值的,后面部分显示nan,至于为什么显示nan我目前还不知道

  • 2
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要将CSV文件中的数据转换灰度图像,您需要先按照数据存储的方式读取它们。一般来说,CSV文件中的数据是一串数字,以逗号分隔并按行排列。因此,您需要使用Python中的CSV模块来读取CSV文件中的数据。 以下是将CSV数据转换灰度图像的步骤: 1.导入必要的库和模块: ```python import csv import numpy as np import cv2 ``` 2.读取CSV文件并将数据存储在NumPy数组中: ```python data = [] with open('data.csv', 'r') as csvfile: csvreader = csv.reader(csvfile) for row in csvreader: data.append(row) data = np.array(data).astype(np.uint8) ``` 在这里,我们使用csv.reader()函数按行读取CSV文件中的数据,并使用numpy.array()将其转换NumPy数组。我们还使用.astype()函数将NumPy数组中的数据转换为8位无符号整数格式,以便我们可以将其用作OpenCV中的图像数据。 3.将NumPy数组转换灰度图像: ```python img = cv2.cvtColor(data, cv2.COLOR_GRAY2BGR) ``` 在这里,我们使用cv2.cvtColor()函数将NumPy数组转换灰度图像。我们将其转换为BGR格式的图像,以便我们可以在OpenCV中显示它。 4.显示灰度图像: ```python cv2.imshow('Image', img) cv2.waitKey(0) cv2.destroyAllWindows() ``` 在这里,我们使用cv2.imshow()函数显示灰度图像。我们使用cv2.waitKey()等待用户按下任意键,然后使用cv2.destroyAllWindows()关闭所有打开的窗口。 这就是将CSV数据转换灰度图像的过程。您可以根据自己的需要对图像进行处理和分析。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值