Automating Scrolling using PythonOpencv by Color Detection (original) (raw)

Last Updated : 23 Jul, 2025

Prerequisites:

It is possible to perform actions without actually giving any input through touchpad or mouse. This article discusses how this can be done using opencv module. Here we will use color detection to scroll screen. When a certain color is detected by the program during execution the screen starts to scroll on its own.

Approach

Below is the implementation.

Python3 `

import cv2 import numpy as np import pyautogui

low_green = np.array([25, 52, 72]) high_green = np.array([102, 255, 255])

cap = cv2.VideoCapture(0)

prev_y = 0

while True: ret, frame = cap.read() hsv = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV) mask = cv2.inRange(hsv, low_green, high_green) contours, hierarchy = cv2.findContours( mask, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)

for i in contours:
    area = cv2.contourArea(i)
    if area > 1000:
        x, y, w, h = cv2.boundingRect(i)
        cv2.rectangle(frame, (x, y), (x+w, y+h), (0, 255, 0), 2)
        if y < prev_y:
            pyautogui.press('space')
        prev_y = y
cv2.imshow('frame', frame)
if cv2.waitKey(1) == ord('q'):
    break

cap.release() cap.closeAllWindow()

`

Input:

Detecting green color