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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 5.00
arigatu
1 / 1 / 0
Регистрация: 06.12.2012
Сообщений: 12
#1

Работа с bmp изображением - C++

16.12.2012, 16:59. Просмотров 1272. Ответов 13
Метки нет (Все метки)

Всем привет! Интересует вопрос:Каким образом можно считать bmp изображение в матрицу, изменить его(аля инстаграмм), а затем сохранить в bmp формате? Буду очень благодарен за помощь
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.12.2012, 16:59
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Работа с bmp изображением (C++):

Работа с BMP-файлами (класс "8 битное BMP изображение) - C++
Написать класс "8 битное BMP изображение".Класс должен содержать 3 конструктора: конструктор по умолчанию, конструктор с параметрами и...

работа с изображением - C++
Всем Привет. Думаю что вопрос не совсем в том разделе, но лучше не нашел. Думаю вы знаете что допустим если открыть в фотошопе фотку,...

Работа с изображением - C++
Всем доброго времени суток, подскажите есть ли в с++ методы, которые изображение представляют, как двумерный массив? Добавлено через...

Работа с изображением - C++
Нужна подсказка о том, как попиксельно можно работать с изображением (псевдобинарным, т.е. каждый пиксель 255 и 0). Нужна возможность...

Работа с .bmp файлами - C++
Добрый день, нужно увеличить размер .bmp картинки в n раз. Код не обработан, всё находится в Main. Проблема в том, что при вводе n>=2...

Работа с картинками BMP - C++
Как проверить рисунок типа BMP на количество цветов?

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
sovaz1997
CEO SOVAZ Corp.
380 / 226 / 2
Регистрация: 17.12.2011
Сообщений: 819
Записей в блоге: 1
Завершенные тесты: 1
16.12.2012, 17:01 #2
?????
0
arigatu
1 / 1 / 0
Регистрация: 06.12.2012
Сообщений: 12
16.12.2012, 17:04  [ТС] #3
Необходимо написать программу, которая нужное мне bmp изображение считает, применит к нему какой-либо визуальный эффект и сохранит его, создав новый файл bmp. Как применить эффект, я понял, а 1ый и 3ий пункты не знаю как
0
sovaz1997
CEO SOVAZ Corp.
380 / 226 / 2
Регистрация: 17.12.2011
Сообщений: 819
Записей в блоге: 1
Завершенные тесты: 1
16.12.2012, 17:06 #4
Какая среда разработки; библиотека ???
0
v.a.l.i.d
413 / 378 / 10
Регистрация: 21.09.2012
Сообщений: 913
16.12.2012, 17:08 #5
Может это пригодится?
Структура BMP файла

Не по теме:

Хотя если честно, то я ни разу с этим не сталкивался.

0
arigatu
1 / 1 / 0
Регистрация: 06.12.2012
Сообщений: 12
16.12.2012, 17:11  [ТС] #6
среда- с++,
#include <iostream>
#include <fstream>
#include <string.h>
#include <algorithm>
как-то так, главное, что меня интересует, это как в матрицу считать, и как сохранить в новый bmp файл
0
sovaz1997
CEO SOVAZ Corp.
380 / 226 / 2
Регистрация: 17.12.2011
Сообщений: 819
Записей в блоге: 1
Завершенные тесты: 1
16.12.2012, 17:13 #7
Цитата Сообщение от arigatu Посмотреть сообщение
как-то так, главное, что меня интересует, это как в матрицу считать, и как сохранить в новый bmp файл
Как и любой файл. Только не в матрицу)
0
arigatu
1 / 1 / 0
Регистрация: 06.12.2012
Сообщений: 12
16.12.2012, 17:15  [ТС] #8
я, можно сказать, новичок совсем в программировании, на курсы сейчас хожу, сказали разобраться с этим, я даже пробовал код найти, чтобы по нему детально разобраться, что да как, но не нашел
0
sovaz1997
CEO SOVAZ Corp.
380 / 226 / 2
Регистрация: 17.12.2011
Сообщений: 819
Записей в блоге: 1
Завершенные тесты: 1
16.12.2012, 17:18 #9
Может это тебе помжет?

Добавлено через 30 секунд

Не по теме:

Кстати, этот сайт только сегодня изменил дизайн)

1
arigatu
1 / 1 / 0
Регистрация: 06.12.2012
Сообщений: 12
16.12.2012, 18:10  [ТС] #10
Спасибо, сейчас буду вникать

Добавлено через 49 минут
Цитата Сообщение от sovaz1997 Посмотреть сообщение
Как и любой файл. Только не в матрицу)
в случае с матрицей, можно творить что угодно, причем быстро,например, умножить каждое значение на что-то и получится другой цвет уже, а если без нее, то каким еще образом можно картинке эффект придать?
0
sovaz1997
CEO SOVAZ Corp.
380 / 226 / 2
Регистрация: 17.12.2011
Сообщений: 819
Записей в блоге: 1
Завершенные тесты: 1
16.12.2012, 18:17 #11
Похоже ты не знаешь, как устроен файл.

Добавлено через 1 минуту
Файл () - набор непонятных символов типа
Код
ц.ыEШ»sЋЧcRхosч®VОЩ\MCMђтТ9y}BDж±L6Пбц1ћ|±—§^ке№ЧъимћУЅЬАCАџ{њFDж•‘ЩR\
Это - реальный отрывок из png файла. Тебе его надо расшифровывать, затем уже кидать в матрицу
0
Avazart
Эксперт С++
7191 / 5365 / 280
Регистрация: 10.12.2010
Сообщений: 23,672
Записей в блоге: 17
16.12.2012, 18:19 #12
Конвертация BMP в свой формат
0
arigatu
1 / 1 / 0
Регистрация: 06.12.2012
Сообщений: 12
16.12.2012, 19:38  [ТС] #13
да уж) повозиться придется

Добавлено через 1 час 7 минут

Не по теме:


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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
#include <stdio.h>
#include <stdlib.h>
 
void Read_one(int a,int b,int c);
void Write_one(int a,int b,int c);
void Read_two(int a,int b,int c);
void Write_two(int a,int b,int c);
 
FILE *f;
int i,j;
int **p,*m;
 
void Read_one(int a,int b,int c)
{
     f=fopen("image.bmp","rb");
     fseek(f,54,SEEK_SET);
     m=calloc(a*b*c/8,sizeof(int));
     for(i=0;i<a*b*c/8;i++)
     {
         fread(&m,1,1,f);
     }
     fclose(f);
}
void Write_one(int a,int b,int c)
{
     f=fopen("1","wb");
     for(i=0;i<a*b*c/8;i++)
     {
         fwrite(&m,1,1,f);
     }
     fclose(f);
}
void Read_two(int a,int b,int c)
{
     f=fopen("image.bmp","rb");
     fseek(f,54,SEEK_SET);
     p=calloc(a,sizeof(int));
     for(i=0;i<a;i++)
     {
         p=calloc(b*c/8,sizeof(int));
     }
     for(i=0;i<a;i++)
     {
         for(j=0;j<b*c/8;j++)
         {
             fread(&p[j],1,1,f);
         }
     }
     fclose(f);
}
void Write_two(int a,int b,int c)
{
     f=fopen("2","wb");
     for(i=0;i<a;i++)
     {
         for(j=0;j<b*c/8;j++)
         {
             fwrite(&p[j],1,1,f);
         }
     }
     fclose(f);
}
int main(void)
{
     int height,width,bit;
     f=fopen("image.bmp","rb");
     fseek(f,18,SEEK_SET);
     fread(&width,4,1,f);
     fread(&height,4,1,f);
     fseek(f,28,SEEK_SET);
     fread(&bit,4,1,f);
     fclose(f);
     Read_one(height,width,bit);
     Write_one(height,width,bit);
     Read_two(height,width,bit);
     Write_two(height,width,bit);
     return 0;
}


А данный код возможно каким-то образом преобразовать в то, что мне нужно?
0
JOKFEN
6 / 5 / 1
Регистрация: 11.12.2012
Сообщений: 39
16.12.2012, 20:08 #14
Цитата Сообщение от arigatu Посмотреть сообщение
Спасибо, сейчас буду вникать

Добавлено через 49 минут
в случае с матрицей, можно творить что угодно, причем быстро,например, умножить каждое значение на что-то и получится другой цвет уже, а если без нее, то каким еще образом можно картинке эффект придать?
Можно ещё на картинку png файлы накладывать, но тут нужен альфа канал.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.12.2012, 20:08
Привет! Вот еще темы с ответами:

Работа с BMP файлом. - C++
Помогите, с чего начать? Требуется написать программу, которая открывает файл bmp и заменяет в нём каждый 10 байт на байты из текстового...

Скриншот, работа с bmp - C++
Возникла необходимость создания скриншота неактивого окна. В результате долгих поисков, по гуглу я наткнулся на следующий рабочий код: ...

Работа с BMP изображаниями - C++
Доброго дня суток, форумчане! Я начал писать программу чтения BMP-шки в массив. Вот ее код: #include &lt;iostream&gt; #include &lt;fstream&gt; ...

Работа с файлами BMP формата - C++
Привет. Такая ситуация... Нужно считать (именно &quot;вручную&quot;) файл bmp формата в объект класса. При этом если в объект ничего не считано то он...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
16.12.2012, 20:08
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru