Skip to main content

Locate RGB values in a picture! 40x faster than PIL, 5x faster than numpy

Project description

Locate RGB values in a picture! 40 x faster than PIL, 5 x faster than numpy

pip install locate-pixelcolor
from locate_pixelcolor import search_colors



# Let's use a 4525 x 6623 x 3 picture https://www.pexels.com/pt-br/foto/foto-da-raposa-sentada-no-chao-2295744/

import cv2

path = r"C:\Users\Gamer\Documents\Downloads\pexels-alex-andrews-2295744.jpg"

img = cv2.imread(path)

exa1 = search_colors(pic=img, colors=[(255, 255, 255)])



%timeit search_colors(pic=img, colors=[(255, 255, 255)])

96.8 ms ± 534 µs per loop (mean ± std. dev. of 7 runs, 10 loops each)



# You can search for up to 9 different colors at the same time:

search_colors(pic=img, colors=[(255, 255, 255), (0, 0, 0)])



%timeit search_colors(pic=img, colors=[(255, 255, 255),(0, 0, 0)])

132 ms ± 382 µs per loop (mean ± std. dev. of 7 runs, 10 loops each)



# Let's compare it with PIL



from PIL import Image

img = Image.open(path)

img = img.convert("RGB")

datas = img.getdata()



def get_coords_with_pil(col):

    newData = []

    for item in datas:

        if item[0] == col[0] and item[1] == col[1] and item[2] == col[2]:

            newData.append(item)

    return newData



# %timeit get_coords_with_pil(col=(255, 255, 255))

# 3.34 s ± 51.4 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

locate_pixelcolor-0.10.tar.gz (3.8 kB view details)

Uploaded Source

Built Distribution

locate_pixelcolor-0.10-py3-none-any.whl (5.4 kB view details)

Uploaded Python 3

File details

Details for the file locate_pixelcolor-0.10.tar.gz.

File metadata

  • Download URL: locate_pixelcolor-0.10.tar.gz
  • Upload date:
  • Size: 3.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for locate_pixelcolor-0.10.tar.gz
Algorithm Hash digest
SHA256 9439a9e07a004e90bb0091d1b97ba900e15c0735fbcb1b65cf39dca393abaaf7
MD5 6b797c3b96f4dc922eac27ba6fd44df0
BLAKE2b-256 d4a51c42851b74b30f8a81e2573bda560bb31d5e5ba3773ac8f25540994e019d

See more details on using hashes here.

File details

Details for the file locate_pixelcolor-0.10-py3-none-any.whl.

File metadata

File hashes

Hashes for locate_pixelcolor-0.10-py3-none-any.whl
Algorithm Hash digest
SHA256 2fcf1faa97e86e93fd2e8ab93208a45ad2efb74517b0c267443533c8d1c51bc4
MD5 c725183376838556254fa5e30c618b34
BLAKE2b-256 a2eacacb1425d819c6cddff62ecf0d19cfa1b4e116f65f57609df985de4b61c8

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page