python-mss
pythonic-cv
python-mss | pythonic-cv | |
---|---|---|
11 | 36 | |
958 | 38 | |
- | - | |
6.9 | 0.0 | |
2 months ago | about 2 years ago | |
Python | Python | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
python-mss
-
I created VidGear that makes Video-Processing with Python as easy as can be
VidGear provides an easy-to-use, highly extensible, Multi-Threaded + Asyncio Framework on top of many state-of-the-art specialized libraries like OpenCV, FFmpeg, ZeroMQ, picamera, starlette, streamlink, pafy, pyscreenshot, aiortc and python-mss at its backend, and enable us to flexibly exploit their internal parameters and methods, while silently delivering robust error-handling and real-time performance.
-
Any software devs here with launch monitors? working on opensource integration for gspro
I'm using a python library called mss https://github.com/BoboTiG/python-mss
-
How i can screenshot a specific window?
You can use PyGetWindow to get the info of a window based on its name, and then use your screenshot library of choice to get that part of the screen (personally I use mss because it’s fast and cross-platform).
-
I need to take a screenshot of specific area in a different screen
mss can do this efficiently and cross-platform. What’s the use-case?
-
Just About Performance! [Question]
That was one of the main reasons I made my library pythonic-cv - I had solved the problem once (not super well), and realised I was going to have to do it again repeatedly, and thought that was a waste of time. While I was at it I added some additional nice features like iterating over a camera/video stream, using a context manager to handle cleaning it up/releasing it afterwards, and convenient processing and threaded recording loops. I've recently also added mss integration so you can use your screen as a video input in the same way as a camera or video file.
-
[QUESTION][PYTHON] Matching in a specific region of an image
You may also want to consider using mss for taking screenshots efficiently, which allows specifying the screen region you want when taking the screenshot. It has OpenCV/numpy support.
- Made a super tiny and useless external monitor for my laptop using Stm32f103 and st7789 (sorry for vertically filming)
-
Strange PIL error
That error shouldn't be happening, and is most likely some kind of error in mss. If you haven't already, I'd suggest trying to update your mss (e.g. python3 -m pip install --upgrade mss, and if that doesn't help then you should create an Issue on the GitHub page, mentioning your OS and what you're doing that's causing that error.
-
Optimizing ImageGrab and pytesseract
If you’re after speed I’d recommend mss for screenshots/recording, and tesserocr instead of pytesseract (note in particular the OpenCV option.
-
Coverage Map — Helium Explorer: Preprocessing Images with Pyautogui
Your blog post claims to do image preprocessing with pyautogui, but I couldn’t find any image processing steps? Also, if you’re only using pyautogui to take screenshots, you might want to look at a library like mss, which is more efficient and also has support for multiple monitors :-)
pythonic-cv
-
Play a Video on Loop, Replace Video with Photo, Then Go Back to Video
I did something similar in this example, where the “input” was someone covering up a webcam to switch to the next display source (in my case switching through a list of videos that would continue from where they left off).
-
[pyautogui] What is faster?
If you’re wanting to continuously process your screen like a live video stream you might be interested in (my library) pythonic-cv, which supports MSS as a video input backend.
-
Python Code Help - OpenCV Project
I’ve previously done something similar here, but the transition was triggered by covering a webcam (e.g. with a finger).
-
Better alternative to pyautogui image recognition?
pythonic-cv (disclaimer: my library) includes MSS as an input stream option.
-
[Discussion] Any other ways to find convergence of pixels by color?
If that’s of interest, OpenCV provides a detailed stitching example, although my revision is likely a fair amount easier to follow and understand (but it’s been optimised for video, so if you’re wanting to use it with minimal modification you’ll need to provide your images in a sequence where each image has overlap with the one before it, not in a random order).
-
Class has a method called release instead of close. I want to use the With keyword. How do I tell python to call release instead of close
As something of a side note, you may be interested in (my library) pythonic-cv.
-
Write efficient async code in computer vision programs
I wrote pythonic-cv because I found that pipelines regularly require pre and post processing that can be done in parallel across frames - you might want to take a look :-)
-
Is FER just this slow or is it just me?
Likely areas for parallelisation depend on the operations that are happening - if there are independent stages then they can often be made to run at the same time in separate threads (or processes). Concurrency is similar, although more about doing something else while waiting for I/O, and can generally be solved with threads or asyncio coroutines. A common improvement for video-focused computer vision pipelines is reading in/capturing the next frame while the previous frame is being processed (e.g. like is done with pythonic-cv - disclaimer: my library), but given the frame rates you specified then that may help a bit but is likely not the main culprit. ML-based algorithms can often benefit from the inherent parallelisation of a GPU-based implementation, although that can be difficult or even impossible to achieve depending on the algorithm being used.
- Image stitching
-
[Bug] After trying to send to my database my video is suddenly lagging
Personally I’d approach this using pythonic-cv - it has a VideoReader class that supports separate preprocess and process functions, and has threading built in. Then again, I wrote the library, so it’s not so surprising that I’d jump to using it.
What are some alternatives?
PyGetWindow - A simple, cross-platform module for obtaining GUI information on applications' windows.
ffmpeg-python - Python bindings for FFmpeg - with complex filtering support
D3DShot - Extremely fast and robust screen capture on Windows with the Desktop Duplication API
kaleidoscope - Apply a kaleidoscope effect to images and videos
pyscreenshot - Python screenshot library, replacement for the Pillow ImageGrab module on Linux.
pydub - Manipulate audio with a simple and easy high level interface
EasyOCR - Ready-to-use OCR with 80+ supported languages and all popular writing scripts including Latin, Chinese, Arabic, Devanagari, Cyrillic and etc.
SmoothStream - Webcam, PiCamera streaming over the network with Python made easy.
Windows-10-Toast-Notifications - Python library to display Windows 10 Toast Notifications
interactive-projectivity-open - Interactive projections using computer vision
fbcp-ili9341 - A blazing fast display driver for SPI-based LCD displays for Raspberry Pi A, B, 2, 3, 4 and Zero
OpenCV - Open Source Computer Vision Library