cv2operator is a simple library to input various shapes like polygon rectangle and so on.
- LineOperator: input a line by mouse draggin
- PolylineOperator: input a polyline by click
- PolygonOperator: input a polygon by click
- RectOperator: input a rectangle by draggin
- BrushOperator: paint mask region by draggin
- KeyOperator: key management
Here is a simple example.
import cv2
from cv2operator import KeyOperator, OperatorWindow, LineOperator
def line_cb(p1, p2):
print(f"line: p1={p1}, p2={p2}")
image = cv2.imread("goru.jpg")
window = OperatorWindow("example", image)
line_op = LineOperator(window, callback=line_cb)
key_op = KeyOperator()
print(key_op.help())
key_op.main_loop()
all operators are used in a example code. see demo.py in examples.