×

Fast color searching

  • US 9,996,579 B2
  • Filed: 06/26/2014
  • Issued: 06/12/2018
  • Est. Priority Date: 06/26/2014
  • Status: Active Grant
First Claim
Patent Images

1. A system comprising:

  • a memory configured to store computer-executable instructions; and

    a computing device comprising one or more hardware processors, the computing device in communication with the memory and configured to execute the computer-executable instructions to at least;

    obtain a color search range for colors, the colors specified by an n-dimensional color model, the color search range comprising, for each color dimension in the n-dimensional color model, a minimum dimension color value and a maximum dimension color value;

    for each color dimension, identify a first bit prefix that comprises a subset of bits of the minimum color value of the respective color dimension and a second bit prefix that comprises a subset of bits of the maximum dimension color value of the respective color dimension;

    interleave bits of each color dimension'"'"'s first bit prefix based on a bit order of the bits of each color dimension'"'"'s first bit prefix to form an interleaved first bit prefix;

    interleave bits of each color dimension'"'"'s second bit prefix based on a bit order of the bits of each color dimension'"'"'s second bit prefix to form an interleaved second bit prefix;

    generate one or more integer search ranges based at least in part on the interleaved first bit prefix and the interleaved second bit prefix, wherein the one or more integer search ranges each comprise a number of bits that is larger than a number of bits in the interleaved first bit prefix;

    generate a search query, the search query comprising the one or more integer search ranges as search parameters, wherein generation of the search query to comprise the one or more integer search ranges instead of a second integer search range representing the color search range results in an increased query speed, the increased query speed resulting based at least in part on at least one bit value that falls within the second integer search range not falling within the one or more integer search ranges;

    initiate a search, based at least in part on the search query, of a data store for colors within the one or more integer search ranges, the data store comprising records associated with at least one indexed integer color value; and

    receive search results from the data store, the search results comprising records associated with at least one indexed integer color value within the one or more integer search ranges.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×