Форум программистов, компьютерный форум CyberForum.ru

Нужна помощь в обработке изображений! - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Паттерн MVC http://www.cyberforum.ru/cpp/thread2638.html
Большинсту программистов хорошо ивестен данный паттерн, так что вдаваться в подробности не буду, НО что делать когда моделей несколько, элементы модели связанны соотношением один к одному и разные View могут использовать разное колличество моделей, существует ли расширение данного паттерна до такой ситуации. Для наглядности возьмем пример, есть одна модель - это структура графа, элементы модели -...
C++ Кто работал с OGRE Кто подключал физику AREA physx к OGRE. Нет ли исходника или примеров. http://www.cyberforum.ru/cpp/thread2273.html
bin-файлы: открытие, чтение, обработка C++
Здравствуйте, подскажите, пожалуйста, команды, с помощью которых файлы с расширением bin можно не только открыть, но и увидеть, что в них находится, чтобы затем обработать их. Во всех книжках я нашла примерно следующее: #include <fstream> #include <iostram> int main() { char dt; std::fstream iofile("filename.bin", std::ios::in | std::ios::out | std::ios::binary); if...
C++ Алгоритмы сортировок
Наиболее часто задаваемые вопросы по С++. Реализация распространенных алгоритмов, решения типовых задач. Статьи и учебники C++ Оглавление: Выбором Пузырьком Вставками Шелла
C++ Игра "Жизнь" http://www.cyberforum.ru/cpp/thread918.html
Программа: игра "Жизнь". Среда реализации: VC++ 7.0. Интерфейс: real-time изменение колонии. Проблема: окно не успевает прорисовать уже поставленных паразитов на сообщение WM_PAINT. Исходник: высылается по желанию. Детализирую проблему: При изменении размеров окна создаётся временная матрица, в которую заносятся значения из старой матрицы. Далее изменяются размеры новой матрицы в...
 

Показать сообщение отдельно
Kaktus
0 / 0 / 0
Регистрация: 24.03.2009
Сообщений: 4
04.04.2010, 21:02     Нужна помощь в обработке изображений!
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <atlstr.h>
#include <atlimage.h>
#include <fstream>
 
void main ()
{
    CImage in;
    in.Load ( L"in.jpg" ); //открываем картинку из файла
    int w = in.GetWidth(); //ширина
    int h = in.GetHeight(); //высота
    std::ofstream fout ( L"out.txt" )
    for ( int y = 0; y < h; y++ )
    {
        for ( int x = 0; x < w; x++ )
        {
            COLORREF pixel_color = in.GetPixel( x, y ); //цвет пикселя с координатами x, y
            int r = GetRValue ( pixel_color ); //извлечение красного канала
            int g = GetGValue ( pixel_color ); //извлечение зеленого канала
            int b = GetBValue ( pixel_color ); //извлечение синиго канала
            fout << r << " " << g << " " << b << "\t";
        }
        fout << std::endl;
    }
    fout.close();
}
Количество пикселей w * h. Вообще, складывать это все в отдельный текстовый файл на мой взгляд бесполезное занятие. Почему бы не работать с массивом пикселей непосредственно прочитанным из изображения, а не заводить вместо этого файлы-посредники (наверняка, Вы дальше с информацией в этом файле захотите что-то еще сделать).
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru