File size: 2,190 Bytes
e97cf97
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
50
51
52
53
54
import cv2

# Load your image
image = cv2.imread('/media/gjin/New Volume/BACKTEST_DATA/black_edition_rolling_window_50_candlestick_10/images_detection/4h/ADA_USDT_output_result_2024-10-09_16-00-00.jpg')
original_image = image.copy()  # Keep a copy of the original image to reset after every frame

# Get the dimensions of the image
height, width, _ = image.shape

# Define the step size for the grid
step_x = 50  # Step size for x-axis
step_y = 50  # Step size for y-axis

# Draw grid lines
def draw_grid(img):
    for x in range(0, width, step_x):
        cv2.line(img, (x, 0), (x, height), (0, 255, 0), 1)  # Draw green vertical lines
        cv2.putText(img, str(x), (x + 5, 20), cv2.FONT_HERSHEY_SIMPLEX, 0.5, (0, 255, 0), 1)

    for y in range(0, height, step_y):
        cv2.line(img, (0, y), (width, y), (0, 255, 0), 1)  # Draw green horizontal lines
        cv2.putText(img, str(y), (5, y + 15), cv2.FONT_HERSHEY_SIMPLEX, 0.5, (0, 255, 0), 1)

# Mouse callback function to display cursor details
def show_mouse_position(event, x, y, flags, param):
    global image
    if event == cv2.EVENT_MOUSEMOVE:  # Track mouse movement
        image = original_image.copy()  # Reset to original image every frame
        draw_grid(image)

        # Get the BGR color of the pixel at the cursor position
        b, g, r = image[y, x]

        # Display the x, y coordinates and BGR color values on the image
        info_text = f"X: {x}, Y: {y}, Color: B: {b}, G: {g}, R: {r}"
        cv2.putText(image, info_text, (10, height - 10), cv2.FONT_HERSHEY_SIMPLEX, 0.5, (0, 0, 0), 1)  # Text in black

# Create a window
cv2.namedWindow('Image with Grid and Coordinates', cv2.WND_PROP_FULLSCREEN)
cv2.setWindowProperty('Image with Grid and Coordinates', cv2.WND_PROP_FULLSCREEN, cv2.WINDOW_FULLSCREEN)

# Set the mouse callback function to track the cursor movement
cv2.setMouseCallback('Image with Grid and Coordinates', show_mouse_position)

# Draw initial grid
draw_grid(image)

# Display the image with grid and cursor details
while True:
    cv2.imshow('Image with Grid and Coordinates', image)
    if cv2.waitKey(20) & 0xFF == 27:  # Press 'Esc' to exit
        break

cv2.destroyAllWindows()