2017-10-21 78 views
2

我正在從python中的視頻中進行字幕提取。我已經在python中使用opencv來做到這一點。我已經將它分爲幾幀,並且將每幀分成圖像這將存儲在我的磁盤,我正在做ocr。但我不想在整個圖像上執行ocr。我只是想要字幕part.I手動裁剪圖像與這些值278:360,因爲我的圖像大小是360:640.But的影像尺寸不同的視頻變化files.Now我的問題是如何裁剪字幕部分單獨programatically.Please提前如何在python中裁剪圖像的底部(帶有小標題的部分)

textImage = image[278:360,:] 

回答

2

做answer.Thanks你可以把圖像的最後三分之一身高,如果你確定字幕會在那裏。

例如,對於下面的圖像:

enter image description here

步驟如下:

  1. 讀取的圖像成numpy的數組:

在我的例子,我我從skimage.io使用imread,但您可以使用opencv

from skimage.io import imread 
img = imread('http://cdn.wccftech.com/wp-content/uploads/2017/05/subtitle-of-a-blu-ray-movie.jpg') 
img.shape # >>> (383, 703, 3) 
  • 獲取的圖像的底部三分之一(包含字幕):
  • 想法是通過3來劃分圖像的高度,並採取該圖像的底部第三:

    crop_position = int(img.shape[0]/3) 
    subtitle_img = img[img.[0] - crop_position:,:,:] 
    

    所得subtitle_img看起來像這樣:

    enter image description here

    +0

    非常感謝你的工作。對不起,我不太滿意,因爲我的聲望較低。 – krith