convert index of raw image data to RGB

I want to get RGB values from a 24 bit BGR data. This data is from a raw image without a header.
I don’t know how to convert the index of the buffer to its corresponding RGB values.
here is what I have done:


    window_width  = 800;

    window_height = 600;

    size = window_width * window_height;

    pixels = new float[size*3];

    for(int i = 0, j = 0; i < size*3, j < size; i += 3, j++)
    {
        pixels[i+2] = bytes[i];
    }

    updateGL();

void GlWidget::paintGL()
{

glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

glDrawPixels(window_width,window_height,GL_RGB,GL_FLOAT,pixels);

}

what am i missing?

[QUOTE=saman_artorious;1256371]I want to get RGB values from a 24 bit BGR data. This data is from a raw image without a header. I don’t know how to convert the index of the buffer to its corresponding RGB values. here is what I have done:

 window_width = 800; window_height = 600; size = window_width * window_height; pixels = new float[size*3]; for(int i = 0, j = 0; i < size*3, j < size; i += 3, j++) { pixels[i+2] = bytes[i]; } updateGL(); 

void GlWidget::paintGL() { glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); glDrawPixels(window_width,window_height,GL_RGB,GL_FLOAT,pixels); } what am i missing?[/QUOTE] LÊ TRẦN HIẾU KÍNH TẶNG THẦY CÔ

Tôi nhớ mãi những ngày còn đi học
Nhớ cô thầy và nhớ mái trường xưa
Công ơn kia biết nói mấy cho vừa
Vì hạnh phúc con em mà khổ nhọc …

Nơi đẹp nhất cuộc đời là trường học
Cô với thầy phải khóc nhọc dắt dìu
Có nhiều khi ngồi suy nghĩ đăm chiêu
Tìm phương cách để cháu con mở trí

Chúng con trẻ nên rất lười suy nghĩ
Tuổi hoa niên thường ôm lấy cuộc đời
Vẫy tay chào niềm hoan lạc đón mời
Mà quên chuyện, làm thầy cô phiền muộn

Con tha thiết xin thầy cô thông cảm
Đời học trò ngắn chẳng đầy gang
Trông chớp mắt chỉ còn là kỷ niệm
Rất mong manh và nhẹ tựa mây ngàn

Xin tha thứ bởi người xưa còn “bỉnh chúc”
Chúng con vui vì bởi sợ ngày mai
Bước ra trường là những tháng năm dài
Thu lá úa hoặc mùa đông rét mướt

Những năm cuối chúng con nguyện tiến bước
Để đáp đền trong muôn một ơn sâu
Chẳng buông xuôi như nước chảy dưới cầu
Để xứng đáng với những tấm lòng cao quý

Ngày hôm nay chúng con nguyện ghi nhớ
Ngày trọng đại thiêng liêng nhất cuộc đời
Công thầy cô ôi cao cả tuyệt vời
Như ánh sáng mặt trời khi ló rạng

Nếu mai kia cuộc đời con xán lạn
Đó cũng nhờ công đức của thầy cô
Ân sâu này xin mang tận xuống đáy mồ
Xin cô thầy nhận “chân tình tha thiết nhất!”

( Lê Trần Hiếu)


Nếu kiến thức là một thế giới mênh mông, thì thầy cô là người mở rộng cánh cửa đưa ta đến chân trời bao la ấy.
Nếu mỗi cuộc đời là một cánh diều thì thầy cô là ngọn gió nâng những cánh diều bay cao…
Cám ơn thầy, cô đã suốt đời tận tuỵ!Xem thêm

You code is mostly correct although you can be a but more efficient by swapping in buffer


for (int i = 0; i < size*3; i += 3)
{
  temp = bytes[i];
  bytes[i] = bytes[i+2];
  bytes[i+2] = temp;
}

if you want a new buffer


for (int i = 0; i < size*3; i++)
{
  pixels[i] = bytes[i+2];
  pixels[i+1] = bytes[i+1];
  pixels[i+2] = bytes[i];
}