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

Фоторобот на С++: какие библиотеки для этого потребуются - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Написать программу, которая по введенному значению аргумента вычисляет значение функции http://www.cyberforum.ru/cpp-beginners/thread674279.html
Написать программу, которая по введенному значению аргумента вычисляет значение функции, заданной в виде графика. Параметр R вводится с клавиатуры.
C++ Перевод из десятичной в N систему счисления #include "stdafx.h" #include <iostream> #include <math.h> using namespace std; int main () { int osn2, chislo,z=0,i=0,a,b; int *mas = new int; cout<<"\nVvedite osnovanie systemi, v kotoruyu vi hotite perevesti chislo= "; cin>>osn2; cout<<"Vvedite, kotoroe hotite perevesti chislo= "; cin>>chislo; http://www.cyberforum.ru/cpp-beginners/thread674258.html
C++ Найти число, полученное при прочтении числа N справа налево
Дано целое число N (> 0). Используя операции деления нацело и взятия остатка от деления, найти число, полученное при прочтении числа N справа налево. Заранее очень благодарен!
Составить программу для перевода значений угла из градусной меры в радианную и вычислить sin, cos, tg этого угла C++
Составить программу для перевода значений угла из градусной меры в радианную и вычислить sin, cos, tg этого угла
C++ Почему при объявлении переменных тип float выдает ошибку http://www.cyberforum.ru/cpp-beginners/thread674226.html
Подскажите, пожалуйста, почему когда я объявляю переменные как float, то выскакивает ошибка, а когда меняю тип на double, то все корректно работает? #include <math.h> #include <stdio.h> #include <conio.h> void main () { float a=6.32, b=7.28, c=3.15, d=2.16, result; printf ("Formula ravno");
C++ За сколько можно выучить C++? Я уже долго его изучаю а так и не могу его хорошо выучить. Даже до классов еще не дошел. :cry: подробнее

Показать сообщение отдельно
Yurek
180 / 178 / 6
Регистрация: 29.08.2012
Сообщений: 489
19.10.2012, 14:39     Фоторобот на С++: какие библиотеки для этого потребуются
Так дело в том, что есть стандартные библиотеки для работы с графикой, Вам же по-любому придётся их изучить чтобы хотя бы элементы интерфейса оформить. Пока это делаете, разберётесь и со всем остальным.

Над Вашей задачей подумал чуток пока до дома вчера шёл. Надумал несколько начальных установок:
  1. Данная задача весьма не проста для начинающего, её можно расковырять только регулярно посвещая ей время, попутно изучая язык. Решать её следует по кусочкам чтобы не обрушивать на себя неподъёмную гору сложно понимаемых вопросов, усиленную пока слабым знанием самого языка.
  2. Сложность задачи будет сильно зависеть от уровня её детализации. Одно дело, если Вы решаете студенческое задание и другие дело, если Вы выполняете заказ для главного отдела криминалистики Москвы.
  3. Изначально Вам не надо заморачиваться именно на составление портретов, следуйте по простейшему пути - абстрагируйтесь от задачи составления именно фоторобота.
  4. Представьте, что Вам надо из имеющихся в наличие примитивов (окружности, прямые, эллипсы, треугольники, дуги и прочие) составить некоторую конечную фигуру.
  5. Решая эту задачу Вы придёте к тому, что надо создать алгоритмы подгонки одних примитивов к другим, меняя их в размере, свободно поворачивая в различных направлениях, растягивая, сжимая и так далее. Это определит набор необходимых программных библиотек которые Вам понадобятся в дальнейшем при решении основной задачи.
  6. Составление фигуры (или фоторобота) требует наличия определённого набора примитивов - библиотеки примитивов, которая должна быть проиндексирована. Действия, производимые над ними для вписывания в картинку тоже вполне определённые и могут быть записаны в виде нескольких простых заисей, по типу: Rotate -10, Move 200, 137 и подобные - что означает поворот исходного примитива на 10 градусов против часовой стрелки и его размещения по заданным координатам.
  7. Совокупность набора информации о исходном примитиве и дальнейших дейвствиях позволит кратко записать информацию о составленном портрете и хранить её, но не сам портрет, а также существенно облегчит поиск сходных портретов и организацию других, вспомогательных функций, при работе с базой данных фотороботов.
  8. Начните уже рисовать что-то, хотя бы снеговика - это 3 окружности, треугольник (морковка), 2 закрашенных круга (глазики), трапеция (ведёрко). Затем усложните задачу в попытке повысить качество отрисовки - тело снеговика из трех окружностей, при наложении которых их края деформируются, аналогично и с девёрком. Это будет очень полезно и довольно просто, а главное - в пику времени года, ибо зима надвигается
  9. Есть довольно большая вероятность, что очень похожие библиотеки выложены в сети (сам не искал, ибо не мне надо, к тому же знаю, что они есть). Есть предпосылки к этому, поскольку действия над примитивами в программе-фоторобот мало отличаются от таких же действий в графических редакторах. Графических редакторов с открытым программным кодом хватает. В памяти почему-то всплыл тот же GIMP, хотя можете найти простенький редактор какого либо студента и разобраться в нём. Очень схожие по фунциям - программы для подбора внешности - одежды, причёски там, макияжа и прочей дребедени
  10. Не стоит думать, что Вы следуете по данному пути первым. Даже если бы Вы решили сделать водородную бомбу, то этот путь был бы истоптан до ядра Земли. Ищите место где для Вас оставлена информация с уже готовым решением Вашей задачи.

Сделать что либо можно только начав это делать. Сделайте уже что-нибудь и процесс пойдёт сам собой. Сам всегда начинаю со сбора информации.

Программа Фоторобот
 
Текущее время: 15:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru