• Shaarli
  • Tag cloud
  • Picture wall
  • Daily
  • RSS
  • Login
4320 shaares
42 / 216
Filters

Fast perceptual image hashing with Perl - Dimitrios Kechagias

QRCode

Talk slides, images & code used: https://github.com/dkechag/ImagePHash-Talk

This talk will take you through a novel Perl implementation of perceptual hashes for “similar image” searches. I'll start with the basics, if you don't know what a Discrete Cosine Transform is, you'll find out with a visual demo - no math required (although math is always encouraged!). After DCTs and p-hashing basics, I will go through the implementation’s new features that make it efficient and easy to integrate with our large MySQL-based image database.

At SpareRoom, the world’s largest roommate finding service, we handle tens of millions of images, mostly of customer rooms/properties. When tasked with adding an internal ability for a “similar image” search, I first looked at existing solutions and found out that some did not work as expected, while others were either slow or required changes to our infrastructure (mainly Perl, with the data - including the image index - on a large MySQL database).
In the end, I went with a solution initially based on Image::Hash, but with p-hashes reimplemented to fix collision issues and add speed (over 10x faster than pHash.org’s equivalent DCT-based hash). Then, I added features such as support for mirroring, as well as “index/reduced” hashes, in order to effectively use MySQL indices (and thus easily fit in our existing setup).
After an intro to the theory behind the DCT and perceptual hashes in general, I will discuss the abilites of this implementation and the experiences from developing and using it. The module will be released to CPAN before my talk, although the XS part responsible for the fast DCT calculation has been available for a while as Math::DCT.

https://tprc2022.sched.com/event/10Fn5

https://www.youtube.com/watch?v=vw4y506TsDA&list=PLA9_Hq3zhoFyOpb-U3DMU7OT93dPUdtpE&index=13
June 27, 2022 at 10:28:41 AM EDT *
perl images
FILLER

A list of new(ish) command line tools

QRCode

A list of new(ish) command line tools

vidir (from moreutils, lets you batch rename/delete files in vim)

https://jvns.ca/blog/2022/04/12/a-list-of-new-ish--command-line-tools/
June 26, 2022 at 1:07:35 PM EDT *
linux rename vim
FILLER

The Scout Pattern // Think Like (a) Git

QRCode

Create a new branch (I often name it test_merge) and switch to it.

https://think-like-a-git.net/sections/testing-out-merges/the-scout-pattern.html
June 17, 2022 at 3:07:46 PM EDT *
git
FILLER

Font redistribution FAQ - Typography | Microsoft Docs

QRCode

Frequently asked questions about font redistribution

  • We view creating graphic files as being essentially the same as printing from an output device.

Can I make a company logo using the fonts?

Unless you are using an application that is specifically licensed for home, student, or non-commercial use, we do not restrict you from making logos using the Windows-supplied fonts.

When can I use document embedding?

Font files contain flags that indicate if and how they can be embedded within a document file. Applications that support document font embedding look at these flags and determine if and how it may be embedded in a document file, and when they open a document containing embedded fonts, they will also look at these flags to determine if and how a document can be viewed or edited.

https://www.fonts.com/content/microsoft-typography

https://docs.microsoft.com/en-us/typography/fonts/font-faq
June 16, 2022 at 2:21:22 PM EDT *
typography fonts license microsoft
FILLER

Primer Prism

QRCode

Create cohesive, consistent, and accessible color palettes

https://primer.style/prism/
June 15, 2022 at 1:32:48 PM EDT *
color colorscheme
FILLER

Keyboard Accordion | Teclado del Acordeón

QRCode

Keyboard Accordion
Play the diatonic button accordion with your computer keyboard!

https://www.keyboardaccordion.com/
June 14, 2022 at 3:29:19 PM EDT *
music
FILLER

Type Scale Calculator

QRCode

Beautiful font sizing for your web typography. Based on “The Typographic Scale” by Spencer Mortensen.

https://type-scale.spencermortensen.com/
June 14, 2022 at 10:48:08 AM EDT *
typography fonts
FILLER

2008 Santa Fe smells like Gasoline | Hyundai Forums

QRCode

My daughter's 2008 Santa Fe had a bad fuel tank sending unit so she took it to her local dealer and paid $500.00 to have it replaced. Ever since the repairs...

https://www.hyundai-forums.com/threads/santa-fe-multiple-problems.687585/
#6 · Apr 26, 2022

I had a fuel smell in my 2011 previously., especially when filling up or full tank. Found the leak in the connecting pipe between the filler cap and the tank. the hose clamp on the bottom of the flexible rubber hose between the filler cap and the tank was damaged and loose. Its located behind the rear driver tire. Looked like a rock or stick hit it. I remove the rear driver side tire to access. Installed a new hose clamp and corrected the fuel smell problem.

https://www.hyundai-forums.com/threads/2011-santa-fe-p0455-no-obvious-leak.649119/#post-5863985
Funny enough it ended up being the PCM valve, but the biggest culprit wa the fuel tank lock rings and seals. Easy enough replacement and I got to really vacuum under my rear seats! Thank you so much!

Fuel Tank Float Replacement 2007-2009 Hyundai Santa Fe / Fuel Gauge Intermittent?
https://www.youtube.com/watch?v=CIusrFUk4U4

Top 5 Problems Hyundai Santa Fe SUV 2nd Generation 2007-13
https://www.youtube.com/watch?v=bMgRkIkXXCI

https://www.hyundai-forums.com/threads/2008-santa-fe-smells-like-gasoline.139257/#post-2072954
June 12, 2022 at 9:48:09 AM EDT *
hyundai
FILLER

-apple-system and BlinkMacSystemFont are now both obsolete and covered by system... | Hacker News

QRCode

Never, ever use system-ui as the value of font-family

https://infinnie.github.io/blog/2017/systemui.html

https://news.ycombinator.com/item?id=30136691
June 2, 2022 at 1:43:45 PM EDT *
typography webdesign fonts
FILLER

What's In That String? | Tom Wyant [blogs.perl.org]

QRCode

local $Data::Dumper::Useqq = 1;
print Data::Dumper::Dumper( $_ );

$VAR1 = "\30\31\32\e\34\35\36\37 !\"#\$%&'";
$VAR1 = "\30\31\32\e\34\35\36\37 !\"#\$%&\x{100}";

http://blogs.perl.org/users/tom_wyant/2022/05/whats-in-that-string.html
May 31, 2022 at 10:28:51 AM EDT *
perl unicode
FILLER

Safety blue color scheme - Lyft

QRCode

Colorbox.io - version 1 is no longer available (heroku).

Algorithm for generating colors was open-sourced, but not the app itself.

https://github.com/k-vyn/coloralgorithm

https://lyft-colorbox.herokuapp.com/#steps=11#hue_start=200#hue_end=200#hue_curve=easeInQuad#sat_start=0#sat_end=94#sat_curve=easeOutCubic#sat_rate=131#lum_start=100#lum_end=28#lum_curve=easeOutCubic#lock_hex=#006395#minor_steps_map=0

I added 'denim' which does meet the 4.5 contrast ratio.

I moved the legacy blues into the 'safetyinsurance.com additional colors' section. The goal would be to retire these colors.

Quote Edit #5
Updated by Robin Krolikowski over 1 year ago
I checked out the app and came up with this page:

https://lyft-colorbox.herokuapp.com/#steps=21#hue_start=200#hue_end=200#hue_curve=easeInQuad#sat_start=4#sat_end=90#sat_curve=easeOutQuad#sat_rate=130#lum_start=100#lum_end=18#lum_curve=easeOutQuart#minor_steps_map=0,0,0,2.5,2.5,2.5,170,180,190

https://redmine.safetyinsurance.com/issues/28604#:~:text=https%3A//lyft%2Dcolorbox.herokuapp.com/%23steps%3D11%23hue_start%3D200%23hue_end%3D200%23hue_curve%3DeaseInQuad%23sat_start%3D0%23sat_end%3D94%23sat_curve%3DeaseOutCubic%23sat_rate%3D131%23lum_start%3D100%23lum_end%3D28%23lum_curve%3DeaseOutCubic%23lock_hex%3D%23006395%23minor_steps_map%3D0
May 23, 2022 at 11:10:21 AM EDT *
safety color colorscheme
FILLER

107 - Book Cover Mistakes That Can Sabotage Your Marketing - Author Media

QRCode

Any one of these 11 book cover mistakes could ruin all your other book marketing efforts. Learn how to avoid them.

lousybookcovers.com

https://www.authormedia.com/book-cover-mistakes/
May 20, 2022 at 9:31:58 AM EDT *
books design
FILLER

One Weird Trick for Writing a First Draft | by Clive Thompson | Creators Hub | Apr, 2022 | Medium

QRCode

Like most writers, I procrastinate like mad. When I’ve finished my research and time comes to start writing, I’ll poke around in a zillion other tasks — rearranging my desk, tackling old email, going…

  • I begin each paragraph with a hyphen.
  • I lower-case the first letter of every sentence.
  • I don’t put a period at the end of a sentence. (A question mark or exclamation point is fine.) Instead, I end each sentence using two forward-slashes, like this //

I leave it in that odd format right up until the day before I’m filing a big magazine feature. Then, on the last day, I slowly go through the whole piece, transforming each sentence into the correct format.
This frees me up, on this final day, to become an obsessive about word choice on a sentence-by-sentence level.

https://medium.com/creators-hub/one-weird-trick-for-writing-a-first-draft-998ee9408663
May 19, 2022 at 8:18:48 AM EDT *
writing
FILLER

Micro @eleven_ty tip:

QRCode

We can use the Nunjucks "dump" filter to call "JSON.stringify" on an object and "dump" the result(s) into our template.

For example, we can render information about our current page with the Eleventy supplied "page" variable.

https://twitter.com/Eduardo__Uribe/status/1519088476288811009
May 17, 2022 at 10:10:12 AM EDT *
eleventy
FILLER

The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!) – Joel on Software

QRCode

Ever wonder about that mysterious Content-Type tag? You know, the one you’re supposed to put in HTML and you never quite know what it should be? Did you ever get an email from your friends in…

https://www.joelonsoftware.com/2003/10/08/the-absolute-minimum-every-software-developer-absolutely-positively-must-know-about-unicode-and-character-sets-no-excuses/
May 14, 2022 at 8:13:28 AM EDT *
unicode
FILLER

Khruangbin: NPR Music Tiny Desk Concert

QRCode

May 16, 2018 | Bob Boilen -- It was daylight but the music was dark and moody. And despite having the office lights turned on high, it was Khruangbin's trance-inducing tone that set the mood and carried me away.

This trio from Houston, Texas is heavily inspired by 1960s and '70s funk and soul from, of all places, Thailand. That musical passion has taken them on a journey that, these days, incorporates music from Spain, Ethiopia and the Middle East. Khruangbin's largely instrumental music is grounded in Laura Lee's bass, with Mark Speer playing those melodic, richly reverbed guitar sounds and Donald "DJ" Johnson on drums and piano.

Two of the three songs performed at this Tiny Desk Concert are from their 2018 album Con Todo El Mundo, which is dedicated in part to Laura Lee's Mexican-American grandfather. He'd often ask her how much she loved him and the response that pleased him most was when she would say, "con todo el mundo," (with all the world.)

The third track in this performance is one of the band's first forays into vocals, from their 2015 debut album, The Universe Smiles Upon You. "White Gloves" gently pays homage to a "classy lady" who was "a fighter" and who "died in a fight." Its open-ended lyrics could imply a battle that was violent or an illness. It isn't clear. What is clear is the reverence in the song and in this music — music that strays from typical instrumental songs with heavy beats. This is music to sway to and to lift you beyond the day to day.

SET LIST
"Maria También"
"August 10"
"White Gloves"

https://www.youtube.com/watch?v=vWLJeqLPfSU
May 11, 2022 at 9:51:58 AM EDT *
music
FILLER

My Google Coding Interview Question | by William Wen | CodeX | May, 2022 | Medium

QRCode

Given a positive sorted array a = [ 3, 4, 6, 9, 10, 12, 14, 15, 17, 19, 21 ];
Define a function f(a, x) that returns x, the next smallest number, or -1 for errors.
i.e.
f(a, 12) = 12
f(a, 13) = 12

Why Binary Search?

Binary search is one of the most difficult “simple” coding problems. The algorithm looks trivial, but it’s a devil to implement. Jon Bentley, a former CMU professor, wrote in his book Programming Pearls that only 10% of professional programmers are able to implement it correctly, including PhD students.

https://medium.com/codex/my-google-coding-interview-question-166f2922b548
May 11, 2022 at 8:58:40 AM EDT *
interviewing programming career
FILLER

I'm All-In on Server-Side SQLite · Fly

QRCode

Litestream is an open-source project that makes SQLite tenable for full-stack applications through the power of ✨replication✨. If you can set up a SQLite database, you can get Litestream working in less than 10 minutes.

https://fly.io/blog/all-in-on-sqlite-litestream/
May 11, 2022 at 8:40:33 AM EDT *
sql sqlite
FILLER

Explore DOM Events 👩‍🔬

QRCode

A visualizer to help you learn how the DOM Event system works through exploration. Explore event phases, stopping events, canceling events, passive events and more.

https://domevents.dev/
May 11, 2022 at 6:55:00 AM EDT *
javascript jquery webdesign
FILLER

Going to put sheet vinyl on this floor, is it even enough or should I put plyboard/cardboard over it? : Flooring

QRCode

How does one patch plywoods?

Henrys feather finish. It comes as a powder, you mix it with water until its the consistency of....i dunno... Mayonnaise? Lol best i can come up with... I'll usually just mix it right on the floor, with 2 putty knives. Then you spread it on all the seams with a putty knife.

Your not trying to lay it on thick, just spread it thick on first pass, then pull it all flat with 2nd and 3rd passes. Think joint compound.

Let it dry. Scrape if needed. Multiple coats if needed (if it's jyst factory edge seams, you most likely won't need multiple coats) and your ready to go.

Also, just to be clear.. You want a plywood with a finished top layer. Nicce and smooth. You don't want to use some rough cut builder grade plywood. 1/4 is plenty, because it's not for structural reasons.

https://www.reddit.com/r/Flooring/comments/ump3bq/going_to_put_sheet_vinyl_on_this_floor_is_it_even/?%24deep_link=true&correlation_id=e7200556-0b49-42b2-8203-eb07d0b02eca&post_fullname=t3_ump3bq&post_index=1&ref=email_digest&ref_campaign=email_digest&ref_source=email&%243p=e_as&_branch_match_id=1017042970052510291&_branch_referrer=H4sIAAAAAAAAA22Q3U7DMAyFn6bcdQtJtwHShJDQXsNKG6%2B1yB%2BJs8Hb4zJ2h5RIR9%2FR8bG8MOf6st0WdI54Y3PeeIofW5NfOz2YfESw9UFkKjRTtB5a8cdlTXXmrdMnedfrdfOXn1IQUOSffJJInEUKDBi5imwhm%2FFTxJzEA06QG0NdEBkuFL89pAi8UIXzmgcRxIAXjGuVkbbBIWZYd%2BzMO5eGnd5PqRT0lknC5ITjQSu12%2B17NQ7P%2FaBH3T9pZXoc1cGpUWmcrORyqgzn5n20AddxBu4L3jyKDr%2FEeBRQ8LxODpY8OJqx8g3CZEO2NMf%2F3ZpamfDuCWwcYEqR5SJCf2uY2OMPrfn5mIoBAAA%3D
May 11, 2022 at 6:54:19 AM EDT *
flooring home
FILLER
42 / 216
Shaarli · The personal, minimalist, super fast, database-free, bookmarking service by the Shaarli community · Documentation
Fold Fold all Expand Expand all Are you sure you want to delete this link? Are you sure you want to delete this tag? The personal, minimalist, super fast, database-free, bookmarking service by the Shaarli community