Judge a book by its cover

I am an avid reader and I am on track this year to break my yearly reading record. While thinking about running up some statistics on my reading, I started to wonder, what do these covers look like?

It has been over 15 years since I could see pictures but I am certainly aware book covers are a big deal. This may be something to do with the fact my wife illustrates books! This past weekend I thought I would have a play around with pulling out some interesting descriptive information. I started simple with the following criteria:

  • Collate cover images of books I have read so far this year
  • Identify the most common colours (RGB/Hex values)
  • Convert these to descriptive colour names

Luckily this year I started tracking all my reading inside Goodreads, so my list of books was a simple export away. A quick Python script later and a few calls to the Google Books API and I had covers for all my books. Continuing with Python I extracted the most common colours to get a sense of what was popular.

While the script itself worked, I found the colour identities lacking. It didn’t provide a deeper insight I required. So my premise of using colours doesn’t carry the depth of description I would like. Therefore, this following weekend I intend to improve on this. The next step is to feed all the covers into an LLM to get detailed descriptions. I fear the issue here will be the sheer number of books, so I may resort to randomising a smaller subset.

Below are the colour results from this year’s reading so far, once I have completed my other analysis I will share the code and repo!

Most Common Dominant Human Colour Names

  • very dark greyish black: 13 cover(s)
  • very bright greyish white: 8 cover(s)
  • very dark red: 5 cover(s)
  • very bright vivid yellow: 4 cover(s)
  • very bright muted cyan: 4 cover(s)
  • very dark blue: 3 cover(s)
  • very dark muted cyan: 3 cover(s)
  • very bright vivid red: 3 cover(s)
  • very dark magenta: 3 cover(s)
  • bright greyish grey: 3 cover(s)

Brightness Distribution

  • Dark: 87 cover(s)
  • Medium: 15 cover(s)
  • Bright: 13 cover(s)

Temperature Distribution

  • Warm: 48 cover(s)
  • Cool: 35 cover(s)
  • Neutral: 32 cover(s)