Create a 2-D histogram from an image.
void image2hist()
{
TASImage image(
"$ROOTSYS/tutorials/visualisation/image/rose512.jpg");
UInt_t yPixels = image.GetHeight();
UInt_t xPixels = image.GetWidth();
UInt_t *argb = image.GetArgbArray();
TH2D *
h =
new TH2D(
"h",
"Rose histogram", xPixels, -1, 1, yPixels, -1, 1);
for (int row = 0; row < xPixels; ++row) {
for (int col = 0; col < yPixels; ++col) {
int index = col * xPixels + row;
float grey = float(argb[
index] & 0xff) / 256;
h->SetBinContent(row + 1, yPixels - col, grey);
}
}
}
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t index
R__EXTERN TStyle * gStyle
2-D histogram with a double per channel (see TH1 documentation)
void SetPalette(Int_t ncolors=kBird, Int_t *colors=nullptr, Float_t alpha=1.)
See TColor::SetPalette.
- Author
- Olivier Couet
Definition in file image2hist.C.