2 votes

TypeError: self._open() a reçu un argument de mot-clé inattendu 'as_grey' python

Un de mes collègues rencontre une erreur dans le service Python lors de la classification de l'image. Ci-dessous se trouve le journal de suivi de l'erreur

 Fichier "nsfw.py", ligne 7, dans 
score = classifier.get_score('8.jpg')
Fichier "/home/arunsharma/.local/lib/python3.6/site-packages/open_nsfw_python3/__init__.py", ligne 104, dans get_score
image_data, caffe_transformer=caffe_transformer, caffe_net=nsfw_net, output_layers=['prob'])

Fichier "/home/arunsharma/.local/lib/python3.6/site-packages/open_nsfw_python3/__init__.py", ligne 52, dans caffe_preprocess_and_compute
image = caffe.io.load_image(img_data_rs)
Fichier "/usr/lib/python3/dist-packages/caffe/io.py", ligne 301, dans load_image
img = skimage.img_as_float(skimage.io.imread(filename, as_grey=not color)).astype(np.float32)
Fichier "/home/arunsharma/.local/lib/python3.6/site-packages/skimage/io/_io.py", ligne 48, dans imread
img = call_plugin('imread', fname, plugin=plugin, **plugin_args)
Fichier "/home/arunsharma/.local/lib/python3.6/site-packages/skimage/io/manage_plugins.py", ligne 210, dans call_plugin
return func(*args, **kwargs)
Fichier "/home/arunsharma/.local/lib/python3.6/site-packages/skimage/io/_plugins/imageio_plugin.py", ligne 10, dans imread
return np.asarray(imageio_imread(*args, **kwargs))
Fichier "/home/arunsharma/.local/lib/python3.6/site-packages/imageio/core/functions.py", ligne 264, dans imread
reader = read(uri, format, "i", **kwargs)
Fichier "/home/arunsharma/.local/lib/python3.6/site-packages/imageio/core/functions.py", ligne 186, dans get_reader
return format.get_reader(request)
Fichier "/home/arunsharma/.local/lib/python3.6/site-packages/imageio/core/format.py", ligne 164, dans get_reader
return self.Reader(self, request)
Fichier "/home/arunsharma/.local/lib/python3.6/site-packages/imageio/core/format.py", ligne 214, dans __init__
self._open(**self.request.kwargs.copy())
TypeError: _open() got an unexpected keyword argument 'as_grey'

Ici se trouve la bibliothèque qu'il a utilisée. Il a d'abord installé la bibliothèque Caffe et mis à niveau la bibliothèque skimage. mais sans succès.

Toute aide sera appréciée.

Code:

from open_nsfw_python3 import NSFWClassifier

classifier = NSFWClassifier()

score = classifier.get_score('image.jpg')

print(score)

Il obtient l'erreur lors de l'exécution de get_score.

5voto

WilderField Points 30

Pycaffe dépend de skimage pour effectuer le prétraitement des images. Comme skimage a avancé dans les versions, ils ont décidé de renommer certains arguments de fonction de as_grey à as_gray.

Cependant, Caffe utilise toujours as_grey:

https://github.com/BVLC/caffe/blob/9b891540183ddc834a02b2bd81b31afae71b2153/python/caffe/io.py#L302

Vous avez deux options, installer une ancienne version de skimage, ou changer cette ligne de code dans pycaffe, pour utiliser as_gray.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X