-
Notifications
You must be signed in to change notification settings - Fork 0
/
prefect_demo.py
49 lines (37 loc) · 1.26 KB
/
prefect_demo.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
import cv2
import numpy as np
from prefect import flow
from prefect.deployments import run_deployment
@flow
def show_text_image(text:str):
# Create a white image
width, height = 200, 100
image = np.ones((height, width, 3), np.uint8) * 255
# Define the text and font
font = cv2.FONT_HERSHEY_SIMPLEX
font_scale = 1
font_color = (0, 0, 0)
font_thickness = 2
# Get the text size
text_size = cv2.getTextSize(text, font, font_scale, font_thickness)[0]
# Calculate the center position
text_x = (image.shape[1] - text_size[0]) // 2
text_y = (image.shape[0] + text_size[1]) // 2
# Add text to the image
cv2.putText(image, text, (text_x, text_y), font, font_scale, font_color, font_thickness)
# Display the image
cv2.imshow('Image', image)
# Wait for 2 seconds
cv2.waitKey(2000)
# Close the image window
cv2.destroyAllWindows()
@flow
def add_numbers(num1: int, num2: int):
sum = num1 + num2
print(f"Sum: {sum}")
@flow
def demo():
run_deployment(name="show-text-image/show_text_image_xiangyuan",parameters={"text": "hello"}, as_subflow=True)
run_deployment(name="show-text-image/show_text_image_Jackie",parameters={"text": "world"}, as_subflow=True)
if __name__ == "__main__":
demo()