def define_roi(self, image, above=0.0, below=0.0, side=0.0):
'''
Bildbereiche welche nicht von Interesse sind werden geschwärzt.
Parameter
---------
image : das zu maskierende Bild
above (optional) : Float
Angabe in Prozent, wie viel vom oberen Bild geschwärzt werden soll.
Default Wert ist 0.0
>> 1.0 entspricht dabei 100%
below (optional) : Float
Angabe in Prozent, wie viel vom unteren Bild geschwärzt werden soll.
Default Wert ist 0.0
>> 1.0 entspricht dabei 100%
side (optional) : Float
Angabe in Prozent, wie viel von den Seiten des Bildes geschwärzt werden soll.
Dabei werden die Seiten nicht senkrecht nach unten maskiert, sondern trapezförmig
zum oberen maskierten Bildrand (above).
Default Wert ist 0.0
>> 1.0 entspricht dabei 100%
Rückgabe
---------
image : maskiertes Bild
'''
height, width, channels = image.shape
color_black = (0, 0, 0)
# maskiert untere Bildhäfte
image[height - int((height*below)):height, :] = color_black
# definiere Punkte für Polygon und maskiert die obere und seitliche Bildhälfte
pts = np.array([[0, 0], [0, int(height*(above+0.15))], [int(width*side), int(height*above)], [width-int(width*side), int(height*above)], [width, int(height*(above+0.15))], [width, 0]], np.int32)
cv2.fillPoly(image, [pts], color_black)
return image
image_preparator.py 文件源码
python
阅读 31
收藏 0
点赞 0
评论 0
评论列表
文章目录