Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.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+;OpenCV-读取图像文件名_Python_Opencv_Imread - Fatal编程技术网

Python+;OpenCV-读取图像文件名

Python+;OpenCV-读取图像文件名,python,opencv,imread,Python,Opencv,Imread,我有以下代码片段: img = cv2.imread('1.jpg') 当我打印img时,我得到如下结果。如何仅返回1.jpg部分 [[[140 149 139] [153 162 152] [155 165 153] ..., [ 44 20 8] [ 46 22 10] [ 46 22 10]] [[151 160 150] [156 165 155] [152 162 150] ..., [ 47 23 11] [ 4

我有以下代码片段:

img = cv2.imread('1.jpg')
当我打印img时,我得到如下结果。如何仅返回
1.jpg
部分

[[[140 149 139]
  [153 162 152]
  [155 165 153]
  ..., 
  [ 44  20   8]
  [ 46  22  10]
  [ 46  22  10]]

 [[151 160 150]
  [156 165 155]
  [152 162 150]
  ..., 
  [ 47  23  11]
  [ 48  24  12]
  [ 45  21   9]]

 [[155 164 154]
  [152 161 151]
  [146 156 144]
  ..., 
  [ 47  23  11]
  [ 49  25  13]
  [ 49  25  13]]

 ..., 
 [[ 28  16   6]
  [ 33  21  11]
  [ 32  20  10]
  ..., 
  [144 131 105]
  [150 137 111]
  [151 138 112]]

 [[ 33  18   9]
  [ 34  19  10]
  [ 34  20   8]
  ..., 
  [144 135 108]
  [143 134 107]
  [148 139 112]]

 [[ 31  16   7]
  [ 31  16   7]
  [ 35  21   9]
  ..., 
  [145 141 112]
  [137 133 105]
  [143 139 111]]]

谢谢。

我相信
cv2.imread
返回一个numpy数组。因此,除非使用自定义类,否则无法存储名称

class MyImage:
    def __init__(self, img_name):
        self.img = cv2.imread(img_name)
        self.__name = img_name

    def __str__(self):
        return self.__name
然后,您可以将其用作:

>>> x = MyImage('1.jpg')
>>> str(x)
1.jpg
>>> x.img # the numpy array

我相信
cv2.imread
返回一个numpy数组。因此,除非使用自定义类,否则无法存储名称

class MyImage:
    def __init__(self, img_name):
        self.img = cv2.imread(img_name)
        self.__name = img_name

    def __str__(self):
        return self.__name
然后,您可以将其用作:

>>> x = MyImage('1.jpg')
>>> str(x)
1.jpg
>>> x.img # the numpy array

打印类型(img)
?它说什么?加载图像时,它返回一个数组,其中包含(看起来是)像素的RGB值。我怀疑任何报税表是否包含有关文件本身的信息。但是,无论是显式的还是通过变量传递的,您都知道文件的名称。为什么需要返回它?
打印类型(img)
?它说什么?加载图像时,它返回一个数组,其中包含(看起来是)像素的RGB值。我怀疑任何报税表是否包含有关文件本身的信息。但是,无论是显式的还是通过变量传递的,您都知道文件的名称。为什么需要返回?返回图像的整个路径,有没有办法只获取文件名?@Ali123什么意思?您是否在询问如何从文件路径提取文件名?还是我误会了?谢谢你的检查,我找到了一个。使用os.path.splitext(img)[0]提取文件名的方法。我不确定这是否是最好的选择,但目前它仍然有效。这将返回图像的整个路径,有没有办法只获取文件名?@Ali123你是什么意思?您是否在询问如何从文件路径提取文件名?还是我误会了?谢谢你的检查,我找到了一个。使用os.path.splitext(img)[0]提取文件名的方法。我不确定这是否是最好的选择,但它现在起作用了