Sembra ti manca una conoscenza di base di Digital Image Processing, Consiglierei a questo libro. Digital Image Processing (3rd Edition) Rafael C.Gonzalez/Richard E.Woods http://www.amazon.com/dp/013168728X
Per il funzionamento di base utilizzando OpenCV (che mi è familiare), ecco un esempio:
/*
function:image reverse
*/
#include "stdafx.h"
#include <stdlib.h>
#include <stdio.h>
#include <math.h>
#include <cv.h>
#include <highgui.h>
int main(int argc, char *argv[])
{
IplImage* img = 0;
int height,width,step,channels;
uchar *data;
int i,j,k;
if(argc<2)
{
printf("Usage: main <image-file-name>/n/7");
exit(0);
}
// Load image
img=cvLoadImage(argv[1],-1);
if(!img)
{
printf("Could not load image file: %s\n",argv[1]);
exit(0);
}
// acquire image info
height = img->height;
width = img->width;
step = img->widthStep;
channels = img->nChannels;
data = (uchar *)img->imageData;
printf("Processing a %dx%d image with %d channels/n",height,width,channels);
// create display window
cvNamedWindow("mainWin", CV_WINDOW_AUTOSIZE);
cvMoveWindow("mainWin", 100, 100);
// reverse image
for(i=0;i<height;i++)
for(j=0;j<width;j++)
for(k=0;k<channels;k++)
data[i*step+j*channels+k]=255-data[i*step+j*channels+k];
// display reversed image
cvShowImage("mainWin", img);
cvWaitKey(0);
cvReleaseImage(&img);
printf("height=%d width=%d step=%d channels=%d",height,width,step,channels);
return 0;
}
si vuole manipolare le immagini senza l'utilizzo di una libreria premade? Hai una strada molto, molto lunga davanti a te. Non ci sarà un tutorial per questo. Dovrai leggere le specifiche JPG, capire la teoria dietro le manipolazioni delle immagini (a meno che tu non stia facendo cose semplici come il ritaglio), e quindi applicare tali manipolazioni al formato specifico di JPG. E allora avrete bisogno di ripetere per PNG, GIF, ecc – Corbin
Se il tuo obiettivo è l'immagine * * elaborazione si dovrebbe almeno anche utilizzare una libreria di caricare le immagini da vari formati contenitore come PNG, JPEG, TIFF, ... . Questi di per sé non hanno nulla a che fare con l'elaborazione. Accanto a questa domanda è ovviamente troppo ampia, usa google. – KillianDS
Se il tuo obiettivo principale è imparare l'elaborazione digitale delle immagini, ti suggerisco di iniziare usando Matlab invece di C++. – Korchkidu