2016-05-28 40 views
2

skimage.color.rgb2lab()を使用してRGBカラースペースからLABカラースペースにイメージを変換できます。私はLABトリプレットにskimage.color.rgb2lab()を使用してRGBトリプレットをLABトリプレットに変換する

rgb_color = [0.1,0.2,0.3] 
lab_color = color.rgb2lab(rgb_color) 

を単一のRGBトリプレットを変換しようとすると、しかし、私は次のエラーを取得する:

ValueError: the input array must be have a shape == (.., ..,[ ..,] 3)), got (3) 

それを行うための正しい方法は何ですか?私はPython 2.7を使用しています。

答えて

6

rgb2lab()は、3D(または4D)画像が必要です。あなたは1Dの数字のリストを渡しています。

それを1画素の画像を与えてみてください:

>>> from skimage import color 
>>> rgb_color = [[[0.1,0.2,0.3]]] # Note the three pairs of brackets 
>>> lab_color = color.rgb2lab(rgb_color) 
>>> lab_color 
array([[[ 20.47616557, -0.65320961, -18.63011548]]]) 
関連する問題