Skip to content

willWallace-RIT/noizunet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

noizunet project

pitchdeck

(boilerplate by chatgpt) ((like all iterative concepts on github, public does not mean complete))

In the noizunet project (image chunking and noise project) the idea is to reduce chunks of image data to a pair of an int and a float. (or one or two floats with noise scaling)

processing currently is designed for "monkeys on a typewriter" processing but if one os to record treaded territory as they process brute force with machine assessing bitmap characteristics rocessing should get more efficient with an evolution in to batch assessment of best case within server instance separated subsets of saved noise subsets.

instead of focusing on novel or complex compression, the algorithm design approched is a best fit model of existing noise.

so the information transferred back and for desired image chunks noise algo used, seed value and scale.

the machine learning application is multi-pronged:

  • scoring generated image adherence to target image
  • assessing and organizing and finding standardized cached generated image against target image
  • denoising
  • upscaling

current:added untestedccode for scoring and subnitting chuncks as well as partial integration to leverage speed with efficiency and precision

noiunet is utilizing noizu compression https://github.com/willWallace-RIT/noizu_compression 🌀 Noizu Compression — Client Loader & Cache System

this is a repo for poc for ranking infrastructure of commonly generated chunks https://github.com/willWallace-RIT/noizunet_ranker

repo for POC for infrastructure creating a coin out of calculation of mining closest image finding, generation, and organization of image chunks https://github.com/willWallace-RIT/noizunet_imageproc_client

repo for poc for compressing lossy os assets with an effective model: https://github.com/willWallace-RIT/NoizuOS_asset_compress

NoizuNet introduces a chunk-based image reconstruction pipeline where images are transmitted as references to known visual primitives instead of raw pixels.

This module implements the client-side engine responsible for:

Downloading shared chunk datasets

Caching chunks locally

Reconstructing images from encoded representations

Falling back to traditional image delivery when needed


⚡ Overview

Instead of sending full images:

  1. The server analyzes an image

  2. It encodes the image into:

references to known chunks

raw fallback data (when needed)

  1. The client:

retrieves cached chunks

reconstructs the image locally

This reduces bandwidth and enables edge-side rendering.


🧠 Architecture

Flow

Client Request → Server Decision ↓ [Raw Image] OR [Noizu Encoding] ↓ Client Reconstruction ↓ Final Image


📦 Features

💾 IndexedDB chunk cache

📥 Chunk pack downloader

🧩 Hybrid reconstruction engine

🔁 Fallback-safe delivery

⚡ Edge-side rendering model


📁 File

noizuClient.js


🚀 Getting Started

  1. Include the client
<script type="module" src="./noizuClient.js"></script>
  1. Download chunk pack

await downloadChunkPack();

This pulls from:

GET /download-chunk-pack

and stores all chunks locally.


  1. Process an image

const canvas = await fetchNoizuImage(file);

This:

sends image to server

receives either:

encoded Noizu data

or fallback image

reconstructs result into a


  1. Display result

ctx.drawImage(canvas, 0, 0);


🧩 Encoding Format

Example server response:

{ "mode": "noizu", "encoding": [ { "type": "ref", "id": "chunk_001", "x": 0, "y": 0 }, { "type": "raw", "data": "base64string...", "x": 64, "y": 0 } ] }


💾 Cache System

Uses IndexedDB:

Stores:

chunks → binary image blobs

meta → versioning (optional)

Benefits:

persistent storage

avoids re-downloading shared visual data

enables offline reconstruction (partial)


🔁 Reconstruction Logic

For each encoded chunk:

Type Behavior

ref Load from cache and draw raw Decode base64 and draw

Final output is rendered onto a canvas.


🧪 Example Usage

<script type="module"> import { downloadChunkPack, fetchNoizuImage } from "./noizuClient.js"; await downloadChunkPack(); upload.onchange = async (e) => { const file = e.target.files[0]; const canvas = await fetchNoizuImage(file); output.width = canvas.width; output.height = canvas.height; output.getContext("2d").drawImage(canvas, 0, 0); }; </script>

⚙️ Performance Considerations

Fast when:

chunk cache is populated

images reuse common patterns

client device has GPU acceleration (future upgrade)

Slower when:

cache is empty

many raw chunks required

large images without reuse patterns


🧠 Design Philosophy

NoizuNet shifts image delivery from:

“Send full image every time”

to:

“Send instructions + reuse known visual primitives”

This mirrors:

texture streaming in game engines

CDN edge caching

procedural generation pipelines


🚀 Roadmap

🔥 High Impact

[ ] Web Worker reconstruction (non-blocking)

[ ] WebGPU acceleration

[ ] Chunk LRU eviction policy

[ ] Versioned chunk packs


⚡ Medium

[ ] Delta updates (?since=version)

[ ] Predictive chunk prefetching

[ ] Binary index format (msgpack)


🧬 Advanced

[ ] Embedding-based chunk matching

[ ] AI-assisted reconstruction refinement

[ ] Perceptual similarity scoring


⚠️ Limitations

Requires initial chunk pack download

Reconstruction cost shifts to client CPU/GPU

Compression efficiency depends on dataset quality

Not ideal for highly unique/noisy images


🧪 Experimental Status

This is a prototype system exploring a new compression paradigm.

Expect:

rough edges

evolving encoding formats

performance tuning needs


🧠 Big Picture

With server + client combined, NoizuNet becomes:

a distributed visual dictionary

a procedural image codec

a bandwidth reduction layer


🌐 Stretch Goal: Precached Noise Input Distribution

One experimental extension for NACR is a precached noise-input distribution system designed to reduce transfer bandwidth and reconstruction overhead.

Instead of transmitting full image chunks or feature payloads, systems can exchange:

noise seed references

index values

chunk reconstruction metadata

ranked approximation mappings

This allows reconstruction systems to generate close approximations locally using synchronized noise preprocessing pipelines.


🧠 Concept

Traditional transfer pipelines send:

Image Chunk → Full Data Transfer

This approach explores:

Noise Seed + Index Mapping + Reconstruction Metadata

Where both sender and receiver share:

deterministic noise generators

chunk ranking models

feature extraction pipelines

approximation libraries


⚡ Goal

Reduce transfer requirements by:

transmitting compact index references

reconstructing probable chunk approximations locally

refining progressively over time


🧩 Proposed Pipeline

Input Image ↓ Chunk Extraction ↓ Noise Approximation Search ↓ Closest Match Selection ↓ Transmit: - noise seed IDs - chunk index IDs - reconstruction ordering - refinement deltas ↓ Receiver Reconstructs Approximate Patchwork ↓ Progressive Refinement Passes


📦 Precached Noise Pools

Clients may maintain local libraries of:

generated noise fields

preprocessed noise transforms

chunk approximation atlases

ranked similarity clusters

These libraries can be periodically synchronized or versioned.


🔍 Approximation Strategy

Instead of exact chunk transfer:

  1. Find closest approximation from noise-derived candidates

  2. Transmit:

candidate index

transform metadata

refinement instructions

  1. Receiver reconstructs locally

📊 Potential Benefits

Feature Benefit

Reduced transfer size Lower bandwidth usage Local reconstruction Faster streaming behavior Stable chunk reuse Better cache efficiency Progressive refinement Early approximate previews Shared approximation pools Distributed reconstruction support


🧬 Experimental Concepts

Future versions could explore:

🕸 Distributed Approximation Meshes

Peer systems share ranked chunk approximations dynamically.


🧠 Learned Noise Embeddings

Neural models predict:

best approximation candidates

refinement order

stable reconstruction paths


🔄 Adaptive Cache Evolution

Frequently reused approximation clusters become:

permanently cached

globally indexed

prioritized in ranking systems


⚠️ Research Status

This is currently an experimental architecture concept.

Challenges include:

synchronization consistency

deterministic preprocessing alignment

approximation drift

artifact accumulation

cache invalidation strategies


🔮 Long-Term Vision

A reconstruction-oriented transfer system where:

"Approximate locally first, refine progressively later."

Rather than transferring exact visual data immediately, systems exchange compact reconstruction intelligence optimized around shared noise-space representations.

About

chunkpack server API for noizu compression

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors