Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

Problem 850. Spectral Distance - Speed Scoring

Created by Richard Zapor

Find quantity of pixels within a spectral distance from a given [r,g,b] spectra.

Spectral distance = sqrt( (r0-ri)^2+(g0-gi)^2+(b0-bi)^2) where [r0,g0,b0] is the target spectra (0:255) and [ri,gi,bi] are from an image pixel.

Two warm-up timing prep runs will be executed against a 512x512 sub-section.

Timing run will be against a 2036x3060 image : concordaerial.png

A second test will select a random point in a small window to confirm accuracy. Unfortunately bwdist does not appear to work in Cody.

Ranking will be based upon speed. Accuracy is still required.

Input: [image array, spectra, threshold distance]

image array [ x, y, 3 ] % Higher order images is a future activity

spectra [ r g b]

Output: [ N ] number of pixels within(<=) threshold distance

Pixel count tolerance of 1% is allowed

The right to update the test points/thresholds is reserved in case of shenanigans.

Problem Group

Solution Statistics

22 correct solutions 33 incorrect solutions
Last solution submitted on Dec 05, 2014

Problem Comments