Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何重塑Numpy阵列?_Numpy_Image Processing_Computer Vision_Data Visualization - Fatal编程技术网

如何重塑Numpy阵列?

如何重塑Numpy阵列?,numpy,image-processing,computer-vision,data-visualization,Numpy,Image Processing,Computer Vision,Data Visualization,我是python新手,我正在尝试可视化一个.txt文件。我试着用NumPy数组来可视化它。我已经成功地使用matplotlib并对其进行了打印,但我想尝试以其自身的高质量对其进行正常可视化,而无需打印或将其转换为图像格式,因为它会将值更改为0-255。这些值不是像素值,而是亮度值。我怎样才能做到呢?非常感谢您的帮助。事先非常感谢你 ROWS = 1392 COLS = 1040 file = open('filename') data = pd.read_table(file,

我是python新手,我正在尝试可视化一个.txt文件。我试着用NumPy数组来可视化它。我已经成功地使用matplotlib并对其进行了打印,但我想尝试以其自身的高质量对其进行正常可视化,而无需打印或将其转换为图像格式,因为它会将值更改为0-255。这些值不是像素值,而是亮度值。我怎样才能做到呢?非常感谢您的帮助。事先非常感谢你

ROWS = 1392
COLS = 1040         
file = open('filename')
data = pd.read_table(file, header=None, skiprows=8, decimal=",")
data = data.iloc[:, :]
array = np.reshape(data,(ROWS, COLS))

在重塑部分,我遇到了无法将大小数组重塑为形状(行、列)的错误。

我正在努力理解问题所在,以及“正常”方法和“正常”质量的含义

您的数据似乎与代码不匹配。如果运行此命令打印行号和行上的字段数:

awk '{print NR,NF}' *txt
1 1
2 1
3 2
4 2
5 2
6 2
7 1393
8 1393
9 1393
10 1393
11 1393
12 1393
13 1393
...
...
1043 1393
1044 1393
1045 1393
1046 1393
你会注意到:

  • 开始时要跳过6行,而不是8行
  • 每行有1393项,而不是1040项
  • 有1040行,而不是1392行

如果要将值保存/表示为真浮点数,可以将其保存为可表示浮点数的TIFF文件,或者使用至少由GIMPPhotoshopImageMagick理解的文件

import cv2

... your existing code ...

# Make data frame into Numpy array
data = data.iloc[:, :]
na = np.array(data)

# Save as TIFF
cv2.imwrite('result.tif', na)

您好,很抱歉造成了混乱。Normal是指在matplotlib中以图形的形式直观地查看数据,而Normal quality是指图像的原始质量,无需将其转换为Jpeg、png或任何其他图像格式。就像直观地看到数据一样。MATLAB有一个特性,它以自己的质量可视化数据,而无需在图像查看器中转换为任何图像格式。谢谢你的帮助。