

画像のヒストグラムを出すプログラムを作ったのですが、以下の行に対してエラーが発生します。  
これはなぜなのでしょうか？

[code]

    cv2.line(img_hst, (i, rows), (i, rows-rows*(v/max_val)), (255,255,255))
    
[/code]

**エラー**

[code]

    only integer scalar arrays can be converted to a scalar index
    
[/code]

**プログラム**

[code]

    import cv2
    import numpy as np
    
    file_src="report1picture.jpg"
    file_dst="hist1.jpg"
    
    img_src=cv2.imread(file_src, 1) 
    img_hst=np.zeros([100,256]).astype('uint8')
    rows, cols=img_hst.shape[:2]
    
    hdims=[256] 
    hranges=[0,256] 
    hist=cv2.calcHist([img_src], [0], None, hdims, hranges)
    
    min_val, max_val, min_loc, max_loc = cv2.minMaxLoc(hist)
    
    for i in range(0, 255):
        v=hist[i]
        cv2.line(img_hst, (i, rows), (i, rows-rows*(v/max_val)), (255,255,255))
    
    cv2.imshow("src", img_src)
    cv2.imshow("hst", img_hst) 
    cv2.imwrite(file_dst, img_hst) 
    
    cv2.waitKey(0)
    cv2.destroyAllWindows()
    
[/code]


CC BY-SA 4.0
2019-12-25T02:58:21.957
61753
2019-12-25T03:05:02.863
2019-12-25T03:05:02.863
3060
37198
question
python opencv
only integer scalar arrays can be converted to a scalar indexというエラーが出ます。