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
如何在python中手动处理图像_Python_Image Processing - Fatal编程技术网

如何在python中手动处理图像

如何在python中手动处理图像,python,image-processing,Python,Image Processing,我想知道如何在python中手动处理图像,即不使用枕头或openCV e.t.c 开始代码: image_file = open("myFile.jpg", 'rb') file_data = image_file.read() integer_values_for_pixels = [] for pixel_value in file_data: integer_values_for_pixels.append(pixel_value) 从这段代码中,我注意到整数值存储在“整型像素

我想知道如何在python中手动处理图像,即不使用枕头或openCV e.t.c

开始代码:

image_file = open("myFile.jpg", 'rb')
file_data = image_file.read()

integer_values_for_pixels = []
for pixel_value in file_data:
    integer_values_for_pixels.append(pixel_value)
从这段代码中,我注意到整数值存储在“整型像素的整数值”列表中。注意:我假设这些整数值是像素的。如果不是,我想知道这些整数值代表什么……到目前为止,我知道它是二进制数据,其中每个整数都由二进制中的一个字节表示(我想)

我有点想知道,当以二进制模式打开文件时,如何获得可以对其执行操作的像素矩阵


顺便说一下,我使用的图像是735*500,24位深度和大小是78442字节。如何根据前面的数字计算78442字节?

中的图像根据用于保存图像的文件扩展名进行编码。有关简单示例,请参见。像素值永远不会按原样保存,因此直接访问字节是无用的

一个极端的例子
在哈夫曼编码(无损)中,单个最频繁的字节可以用单个位表示,因此单个字节在理论上甚至可以表示8个连续的数字。如果数字为
float 64
,相同的数字重复8次,
8 x 64/8=64
字节可以用单个字节表示。

大多数图像格式不以方便的矩阵形式存储像素。例如如果你不怕大学水平的数学,你通常可以通过谷歌搜索“文件格式”来发现如何破译图像文件。谢谢你的解释。