Module Opencv.Draw

Allows for pure-functional drawing operations by queueing a sequence of operations to be drawn at once on a copy of the source image with draw.

type t

A deferred drawing operation produced by the drawing functions below and consumed by draw.

val draw : t list -> Cvdata.t -> Cvdata.t

draw queue mat is the mat resulting from sequentially performing all drawing operations in the queue to mat. The returned mat starts as a clone of mat, so mat is not modified, i.e. this is a pure function.

val draw_segments : Line_segment_detector.t -> Cvdata.t -> t
val normalize : ?⁠alpha:float -> ?⁠beta:float -> ?⁠norm_type:int -> ?⁠dtype:int -> ?⁠mask:Cvdata.t -> Cvdata.t -> t
val insert_channel : Cvdata.t -> int -> t
val randu : Cvdata.t -> Cvdata.t -> t
val randn : Cvdata.t -> Cvdata.t -> t
val accumulate : ?⁠mask:Cvdata.t -> Cvdata.t -> t
val accumulate_square : ?⁠mask:Cvdata.t -> Cvdata.t -> t
val accumulate_product : ?⁠mask:Cvdata.t -> Cvdata.t -> Cvdata.t -> t
val accumulate_weighted : ?⁠mask:Cvdata.t -> Cvdata.t -> float -> t
val watershed : Cvdata.t -> t
val line : ?⁠thickness:int -> ?⁠line_type:int -> ?⁠shift:int -> point2i -> point2i -> Scalar.t -> t
val arrowed_line : ?⁠thickness:int -> ?⁠line_type:int -> ?⁠shift:int -> ?⁠tip_length:float -> point2i -> point2i -> Scalar.t -> t
val rectangle1 : ?⁠thickness:int -> ?⁠line_type:int -> ?⁠shift:int -> point2i -> point2i -> Scalar.t -> t
val rectangle2 : ?⁠thickness:int -> ?⁠line_type:int -> ?⁠shift:int -> rect2i -> Scalar.t -> t
val circle : ?⁠thickness:int -> ?⁠line_type:int -> ?⁠shift:int -> point2i -> int -> Scalar.t -> t
val ellipse1 : ?⁠thickness:int -> ?⁠line_type:int -> ?⁠shift:int -> point2i -> size2i -> float -> float -> float -> Scalar.t -> t
val ellipse2 : ?⁠thickness:int -> ?⁠line_type:int -> rotated_rect -> Scalar.t -> t
val draw_marker : ?⁠marker_type:int -> ?⁠marker_size:int -> ?⁠thickness:int -> ?⁠line_type:int -> point2i -> Scalar.t -> t
val fill_convex_poly : ?⁠line_type:int -> ?⁠shift:int -> Cvdata.t -> Scalar.t -> t
val fill_poly : ?⁠line_type:int -> ?⁠shift:int -> ?⁠offset:point2i -> Cvdata.t list -> Scalar.t -> t
val polylines : ?⁠thickness:int -> ?⁠line_type:int -> ?⁠shift:int -> Cvdata.t list -> bool -> Scalar.t -> t
val draw_contours : ?⁠thickness:int -> ?⁠line_type:int -> ?⁠hierarchy:Cvdata.t -> ?⁠max_level:int -> ?⁠offset:point2i -> Cvdata.t list -> int -> Scalar.t -> t
val put_text : ?⁠thickness:int -> ?⁠line_type:int -> ?⁠bottom_left_origin:bool -> string -> point2i -> int -> float -> Scalar.t -> t