<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Piyush Builds]]></title><description><![CDATA[A technical publication by Piyush covering programming, software engineering, Python, DSA, machine learning, AI, and projects built while learning.]]></description><link>https://piyush-codes.hashnode.dev</link><image><url>https://cdn.hashnode.com/uploads/logos/6a8f6031a4211a2455f18800/5eb28843-79ac-48d6-af2c-b4a502040a27.jpg</url><title>Piyush Builds</title><link>https://piyush-codes.hashnode.dev</link></image><generator>RSS for Node</generator><lastBuildDate>Wed, 02 Sep 2026 16:11:27 GMT</lastBuildDate><atom:link href="https://piyush-codes.hashnode.dev/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[LUMEN - FULL STACK IMAGE ANALYTICAL TOOL ]]></title><description><![CDATA[Lemme share a half-baked project of mine LUMEN, which I am currently working on.
LUMEN - Full Stack Image Data Analyzer (will share the link after completing)
It's primarily a learning project, not a ]]></description><link>https://piyush-codes.hashnode.dev/lumen-full-stack-image-analytical-tool</link><guid isPermaLink="true">https://piyush-codes.hashnode.dev/lumen-full-stack-image-analytical-tool</guid><category><![CDATA[projects]]></category><category><![CDATA[show]]></category><category><![CDATA[Python]]></category><category><![CDATA[fullstack]]></category><dc:creator><![CDATA[Piyush Baraskar]]></dc:creator><pubDate>Sat, 29 Aug 2026 15:26:59 GMT</pubDate><enclosure url="https://cdn.hashnode.com/uploads/covers/6a8f6031a4211a2455f18800/258b493d-9004-4105-b291-da9cdd3981d7.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Lemme share a half-baked project of mine LUMEN, which I am currently working on.</p>
<p>LUMEN - Full Stack Image Data Analyzer (will share the link after completing)</p>
<p>It's primarily a learning project, not a platform/SaaS or something.</p>
<p>The basic idea: The basic idea is simple: give LUMEN an image, and it extracts different properties from it and stores the analysis as structured data.</p>
<p>Working: The image is first loaded using PIL and converted into a NumPy array. LUMEN then performs different types of analysis, including:</p>
<ul>
<li><p>Image dimensions</p>
</li>
<li><p>dtype, std</p>
</li>
<li><p>min/max, mean</p>
</li>
<li><p>RGB channel statistics</p>
</li>
<li><p>Histograms and intensity distribution</p>
</li>
<li><p>Perceptual brightness</p>
</li>
<li><p>Contrast, Sharpness / blur</p>
</li>
<li><p>Colorfulness, Dominant colors</p>
</li>
<li><p>Exposure, Entropy</p>
</li>
<li><p>Duplicate detection</p>
</li>
</ul>
<p>For duplicate detection, I use SHA-256 hashing. The image is hashed and the resulting hash can be used to identify identical files and group duplicates.</p>
<p>Also using pytest to test the analysis functions.</p>
<p>Database side - Made a persistence layer using PostgreSQL + SQLAlchemy. The idea is to store the analyzed images and their results as structured records.</p>
<p>For example, an image can have information such as:</p>
<ul>
<li><p>ID</p>
</li>
<li><p>filename</p>
</li>
<li><p>dimensions</p>
</li>
<li><p>file information</p>
</li>
<li><p>analysis timestamp</p>
</li>
</ul>
<p>And the analysis can contain things like:</p>
<ul>
<li><p>mean brightness</p>
</li>
<li><p>standard deviation</p>
</li>
<li><p>minimum / maximum values</p>
</li>
<li><p>RGB channel statistics</p>
</li>
<li><p>quality metrics</p>
</li>
</ul>
<p>SQLAlchemy ORM is used to represent DB tables as Python models.</p>
<p>Backend — (Work in progress) The backend is being built with FastAPI,</p>
<p>FastAPI receives the image/request, the analysis engine processes it and the results are validated and structured, and the relevant data is persisted in PostgreSQL.</p>
<p>And the frontend will be made later and then deployment......✌🏼</p>
<p>Still work in progress, but this is where LUMEN is currently at, rn making the backend part :)</p>
]]></content:encoded></item></channel></rss>