commit du soir, espoir
This commit is contained in:
		
							parent
							
								
									33daa84530
								
							
						
					
					
						commit
						37ee68278b
					
				
							
								
								
									
										3
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							| @ -23,8 +23,7 @@ doc/*.pdf | ||||
| doc/*.idx | ||||
| doc/*.ilg | ||||
| doc/*.ind | ||||
| doc/foo.tex | ||||
| 
 | ||||
| doc/co*.tex | ||||
| funcs/t | ||||
| funcs/*.o | ||||
| funcs/*.png | ||||
|  | ||||
| @ -9,6 +9,8 @@ | ||||
| \usepackage{listings} | ||||
| \usepackage{babel} | ||||
| 
 | ||||
| \usepackage{graphicx} 		% for gnuplot ylabel rotate | ||||
| 
 | ||||
| \usepackage{pifont}             % caractères rigolos | ||||
| \usepackage{enumitem} | ||||
| \setitemize[1]{label={\ding{87}}} | ||||
| @ -214,6 +216,13 @@ faciliter un peu la chose. Il prend également en compte la copie | ||||
| des divers binaires du dossier \texttt{tools/} (cf. page \pageref{outils}) | ||||
| dans le répertoire prévu à cet effet : \texttt{/usr/local/bin}. | ||||
| 
 | ||||
| Il reste enfin quelques exemples d'utilisation des outils de la | ||||
| ligne de commande depuis un shell | ||||
| dans le répertoire \texttt{scripts/}. | ||||
| Ils sont décrits plus en détail page | ||||
| \pageref{scripts}, et c'est à vous de les adapter à votre \textsl{usecase}. | ||||
| Faites-en ce que vous voulez. | ||||
| 
 | ||||
| % ================================================================= | ||||
| 
 | ||||
| \section{Utilisation coté codeur}\label{codaz} | ||||
| @ -334,7 +343,7 @@ Si tout s'est bien passé (valeur retournée égale à 0), | ||||
| on va trouver la largeur dans \texttt{datas[0]}, | ||||
| la hauteur dans \texttt{datas[1]} et le type dans | ||||
| \texttt{datas[2]}\footnote{La fonction | ||||
| \texttt{fimg\_type\_is\_valid(int type)} peut vous aider}. | ||||
| \texttt{fimg\_type\_is\_valid(int type)} peut vous aider\dots}. | ||||
| 
 | ||||
| Je sais aussi que certains d'entre vous aiment la facilité, aussi | ||||
| je vais vous révéler l'existence d'un nouveau truc bien plus | ||||
| @ -348,6 +357,9 @@ memset(&head, 0, sizeof(FloatImg)); | ||||
| foo = fimg_create_from_dump("lena.fimg", &head); | ||||
| \end{verbatim} | ||||
| 
 | ||||
| Si la valeur retournée est différente de 0, c'est que quelque | ||||
| chose s'est mal passé. | ||||
| Certains messages sont parfois parfois explicites. | ||||
| 
 | ||||
| % 	_________ | ||||
| 
 | ||||
| @ -358,8 +370,7 @@ Bon, vous avez une image latente, et vous souhaitez dessiner dessus | ||||
| Il y a des fonctions pour ça, par exemple~: | ||||
| 
 | ||||
| \begin{verbatim} | ||||
| int fimg_plot_rgb (FloatImg *head, int x, int y,  | ||||
|                                           float r, float g, float b); | ||||
| int fimg_plot_rgb(FloatImg *head, int x, int y, float r, float g, float b); | ||||
| \end{verbatim} | ||||
| 
 | ||||
| Les paramètres sont explicites, mais leur validité doit être | ||||
| @ -369,6 +380,11 @@ qui ajoute du rgb à un pixel, laquelle fonction a d'ailleurs été | ||||
| à la base de la seconde génération de la | ||||
| photographie\index{photographie} en cumul\index{cumul}. | ||||
| 
 | ||||
| Inversement, la fonction | ||||
| \texttt{fimg\_get\_rgb(FloatImg *head, int x, int y, float *rgb)} | ||||
| permet de lire les valeurs des trois canaux d'un pixel donné. | ||||
| Là aussi, il n'y a aucun contrôle sur la validité des valeurs | ||||
| $x$ et $y$ de la demande. | ||||
| 
 | ||||
| %		---------------------------------- | ||||
| 
 | ||||
| @ -379,6 +395,11 @@ semblent cohérents avec la notion d'image flottante. | ||||
| Certains d'entre eux, les plus simples, sont disponibles. | ||||
| Les autres sont à imaginer. | ||||
| 
 | ||||
| \begin{figure} | ||||
| \input{cos01.tex}				% XXX XXX XXX  | ||||
| \caption{Correcteur cos01} | ||||
| \end{figure} | ||||
| 
 | ||||
| Ils prennent chacun trois paramètres, d'abord les images | ||||
| source et destination (\texttt{* FloatImg}), et le troisième | ||||
| est un nombre en double précision donnant la valeur | ||||
| @ -393,9 +414,15 @@ int fimg_cos_01(FloatImg *s, FloatImg *d, double maxval); | ||||
| int fimg_cos_010(FloatImg *s, FloatImg *d, double maxval); | ||||
| \end{verbatim} | ||||
| 
 | ||||
| 
 | ||||
| Si vous souhaitez rajouter votre propre méthode de modification | ||||
| de contraste, il y a quelques explication en page \pageref{exemplefunc}. | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| \begin{figure} | ||||
| \input{foo.tex}				% XXX XXX XXX  | ||||
| \caption{Correcteur cos01} | ||||
| \input{cos010.tex}				% XXX XXX XXX  | ||||
| \caption{Correcteur cos010} | ||||
| \end{figure} | ||||
| 
 | ||||
| Rappelons qu'il est possible pour un logiciel applicatif | ||||
| @ -461,7 +488,9 @@ dans ce domaine\dots | ||||
| 
 | ||||
| \subsubsection{Vers PNM}\index{PNM} | ||||
| 
 | ||||
| Nous avons ici 16 bits par composante, mais au prix | ||||
| Nous avons ici 16 bits par composante, soit 65536 valeurs différentes, | ||||
| ce qui est bien au-delà de ce que peuvent percevoir vos yeux. | ||||
| Hélas, c'est au prix | ||||
| d'une taille énorme sur les fichiers. D'un autre coté, | ||||
| l'utilisation du codage \textsc{ascii}\index{ascii} | ||||
| (alors qu'on pourrait mettre du binaire, plus compact) y est | ||||
| @ -494,12 +523,13 @@ Mais je me soigne. Le mode 16 bits va bientôt arriver. | ||||
| int fimg_save_as_png(FloatImg *src, char *outname, int flags); | ||||
| \end{verbatim} | ||||
| 
 | ||||
| Tous les flags doivent être à zéro. | ||||
| 
 | ||||
| \subsubsection{Vers TIFF}\index{TIFF} | ||||
| \subsubsection{Vers/depuis TIFF}\index{TIFF} | ||||
| 
 | ||||
| Le format canonique de la PAO\index{PAO} du siècle dernier. Il permet | ||||
| de gérer une foultitude de formats numériques. C'est aussi un format | ||||
| classique proposé par les scanners corporates. | ||||
| classique proposé par les gros scanners corporates. | ||||
| 
 | ||||
| To be done\index{XXX} | ||||
| 
 | ||||
| @ -553,7 +583,7 @@ des bords d'image. | ||||
| 
 | ||||
| %		---------------------------------- | ||||
| 
 | ||||
| \subsection{Exemple de fonction}\index{exemple} | ||||
| \subsection{Exemple de fonction}\index{exemple}\label{exemplefunc} | ||||
| 
 | ||||
| Nous allons maintenant écrire une fonction intégrable dans | ||||
| le répertoire \texttt{funcs/}. | ||||
| @ -759,7 +789,10 @@ de méthodes, toutes plus légitimes que les autres. | ||||
| % ------------------------------------------------------------------- | ||||
| \section{TODO}\index{TODO}\label{TODO} | ||||
| 
 | ||||
| Il reste plein de choses à faire pour que ce soit vraiment utilisable. | ||||
| Il reste plein de choses à faire pour que ce soit vraiment utilisable, | ||||
| surtout dans un contexte artistique à grande porosité. | ||||
| C'est par ces frottements de techniques ayant du sens que les | ||||
| choses seront acquises. | ||||
| 
 | ||||
| \begin{itemize}  | ||||
| \item	Import/export au format \textsc{tiff}\index{tiff}. | ||||
| @ -767,6 +800,7 @@ Il reste plein de choses à faire pour que ce soit vraiment utilisable. | ||||
| 	\textsl{[en cours]}. | ||||
| \item	Compléter les traitements mathémathiques (eg le gamma\index{gamma}). | ||||
| \item	Formaliser les codes d'erreur. \textbf{Urgent}. | ||||
| \item	Faire une passe complète de Valgrind\index{valgrind}. | ||||
| \end{itemize} | ||||
| 
 | ||||
| % ------------------------------------------------------------------- | ||||
| @ -841,6 +875,10 @@ de films flous\index{film} à partir de photos floues. | ||||
| Le script \texttt{scripts/echomix.sh} est une première expérimentation | ||||
| en bash, utilisant deux outils en \textsc{cli}.  | ||||
| 
 | ||||
| C'est juste une POC\index{POC}, et une implémentation bien plus | ||||
| complète écrite en \textbf{C}\index{C} est déja en chantier, | ||||
| avec une complexité prévue à un niveau assez réjouissant. | ||||
| 
 | ||||
| % ------------------------------------------------------------------- | ||||
| \section{Video for Linux}\index{v4l2} | ||||
| 
 | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user