Rotació d’imatges a través de la transposada d’una matriu

Una imatge no és solament més que una matriu de N (píxels d’amplada ) x N (píxels d’alçada) x 3 (canals de colors). Per tant, moltes de les operacions que es realitzen sobre imatges són, en realitat, sobre matrius.

Imaginem disposem de la imatge següent:

 

steampunk

 

la podem girar efectuant la transposada de la matriu de cada color.

Codi amb Octave:

I=imread("steampunk.jpg");
/* Transposem la matriu color vermell */
J(:,:,1)=transpose(I(:,:,1));
/* Transposem la matriu color verd */
J(:,:,2)=transpose(I(:,:,2));
/* Transposem la matriu color blau */
J(:,:,3)=transpose(I(:,:,3));
imshow(J) imwrite(J,"t.jpg",jpg)

 

t

Recensió del llibre “Las cinco mentes del futuro”, d’en Howard Gardner

Aquests dies de Nadal he estat llegint el llibre “Las cinco mentes del futuro“, del psicòleg nord-americà Howard Gardner, on exposa, amb una lectura amena i plena d’exemples les diferents ments que ell considera essencials i que creu cal educar i desenvolupar en el món global en el qual vivim.

En Gardner és en realitat molt més conegut per la seva teoria de les intel·ligències múltiples, on trencà en certa manera la visió tradicional sobre el concepte d’intel·ligència (basada en una competència lògica-matemàtica i deixant de banda, en canvi, altres “intel·ligències” com la musical, la naturalista,la interpersonal, etc…).

Aquesta teoria es referia però a capacitats computacionals en assumptes concrets. En aquest altre llibre ofereix la visió i la descripció de les ments, en un sentit més abstracte a l’anterior. Crec que, quan les anomeni, es comprendrà millor. Gardner proposa cultivar les cinc següents:

Una ment disciplinada: la que és capaç de treballar en una professió concreta. De saber resoldre problemes concrets d’un àmbit. L’enginyer no solament n’ha de saber d’enginyeria, sinó que ha de pensar com a tal. Ídem per als metges, mecànics i advocats. Cal treballar dia a dia per a ser professionals capaços, eficaços, actualitzats de les novetats, sigui el sector que sigui. L’individu que no domini almenys una disciplina no resistirà en un lloc de treball exigent i se’l destinarà a tasques menors.

Una ment sintètica: la que és capaç d’analitzar ingents quantitats d’informació (propi de la societat de la informació actual), provinents de diferents orígens i generar-ne una síntesis: un resum, un audiovisual, una classificació, etc… El que estic fent en aquest apunt. Qui no sigui capaç d’elaborar síntesis s’infoxicarà.

Una ment creativa: la que és capaç de crear, en el sentit més ampli possible. No hem de reduir-ho a creacions artístiques. La ment que idea nous programes d’ordinador, noves màquines, noves tècniques, noves maneres de fer, que optimitza, que pensa en nous projectes, en nous negocis, que articula noves idees i nous discursos. Qui no és capaç de crear res podrà ser substituït per una nova màquina.

Una ment respectuosa: que sigui capaç de tolerar i respectar la diferència. Capaç de treballar amb persones amb diferents punts de vista, opinions, professions i nacionalitats diferents (llegir apunt sobre la individualització del caràcter en el món globalitzat ). Les persones que no mostrin respecte a la resta no es guanyaran el respecte dels altres i acabaran per contaminar el seu entorn.

Una ment ètica: que sigui capaç de treballar per a uns valors en els quals creu i per a modelar un nou món més agradable per ell i els seus descendents. Una ment que comprengui que el nostre treball transcendirà la nostra existència.

Persistent of vision display with Arduino – TdR Marcel Jané

Trameto en aquest apunt informació sobre el treball de recerca d’en Marcel Jané, alumne de 2n de Batxillerat de l’Escola Arrels de Solsona i que fou tutoritzat per mi mateix.

L’objectiu del projecte consistia en implementar un artefacte que mostrés un “display” amb persistència de la visió fent servir leds senzills i una placa Arduino. El suport que aguanta la placa fou construït per ell mateix emprant una impressora 3D:

tdrMarcel1

tdrMarcel2

Aquí una demostració del seu funcionament:


Codi del programa per Arduino.

Enllaç al treball complet.

 

 

 

Interpolació de Lagrange amb Octave

Tenim els punts següents: f(-1)=2, f(0)=0, f(3)=4, f(7)=7. Volem estimar el valor de f(4) fent servir la interpolació de Lagrange.

Utilitzem aquesta funció d’Octave (extreta del llibre “Applied numerial methods using Matlab”).

gerard@Zeus:~> more lagranp.m
function [l,L] = lagranp(x,y)
%Input : x = [x0 x1 .... xN], y = [y0 y1 ... yN]
%Output : l = Lagrange polynomial coefficients of degree N
%       L = Lagrange coefficient polynomial
N = length(x)-1;
l = 0;
for m = 1:N + 1
        P = 1;
        for k = 1:N + 1
                if k ~= m, P = conv(P,[1 -x(k)])/(x(m)-x(k)); end
        end
        L(m,:) = P;
        l = l + y(m)*P;
end

Ara, executem Octave:

octave:1> x = [ -1 0 3 7];
octave:2> y = [ 2 0 4 7 ];
octave:3> lagranp(x,y)
ans =

  -0.11458   1.06250  -0.82292   0.00000

Per tant, f(4)=-0.11458*4^3 +  1.06250*4^2  -0.82292* 4 +  0.00000 = 6.3752

Josep Pla il·lustrant les teories de Piketty

Piketty podria haver utilitzat també Josep Pla en una de les nombroses referències literàries que esmenta en “El capital en el segle XXI“.

Recordo que, en aquest darrer llibre, Piketty argumenta que el món d’avui dia està retornant a un “capitalisme patrimonial“, on són poques mans les que controlen la major part del capital i que els diners passen d’unes mans a unes altres bàsicament a través de les herències. Piketty cita novel·les de Balzac, Jane Austen i Henry James per a descriure les rígides estructures socials basades en l’acumulació de capital que hi havia a la França i l’Anglaterra del segle XIX.

En aquest passatge extret del llibre “Girona. Un llibre de records”, Pla il·lustra l’immobilisme de la classe benestant de principis del segle XX a Palafrugell:

En l’època de què estic parlant – a primers de segle – , els rics, els senyors, eren sempre els mateixos, com els pobres érem sempre els mateixos. Quan a Palafrugell es deia que una persona havia tingut un gran enterrament, s’entenia que hi havien assistit les setanta persones que tenien un vestit negre per a anar als enterraments. Eren setanta, ni una més, ni una menys. Les altres dues o tres mil podien, és clar, també assistir-hi; però era igual, vull dir que era exactament igual que si no hi haguessin assistit. Els qui feien el pes, els qui tenien els diners, la posició, les carreres, la terra, les fàbriques i el comerç, els llençols de fil i els filets de vedella, eren setanta. De la presència d’aquestes persones, de la posició que aquestes persones prenien, successivament, en depenia, en definitiva, que les coses existissin o que no passessin d’ésser una pura il·lusió de l’esperit.

No escric pas això amb acrimònia, ni amb la més lleu reticència. Ho recordo, simplement, per subratllar el grau de cristal·lització de la societat del temps i les dificultats objectives que presentava voler saltar la paret. No és pas que algú s’oposés que saltéssiu la paret. No. Només passava una cosa: el fet era considerat tan insòlit i tan sorprenent, que, com totes les coses insòlites i sorprenents, feia riure.

Finalitzat el taller d’iniciació a l’Arduino – TECNO@4weeks’15 Solsona

Cal dir que m’ho he passat molt i molt bé i he après molt també tot dinamitzant el taller d’iniciació a l’Arduino de la Tecno@4weeks’15. El taller, que tot just ha finalitzat avui, ha estat organitzat pel Refugi Tecnològic d’Empresaris del Solsonès. L’Enric i jo mateix n’hem estat els professors.

L’objectiu del curs ha consistit a implementar la majoria d’experiments que conté l’Arduino Starter Kit , encara que n’hi hem afegit algun altre i n’hem proposat també algun de propi. Adjunto, en aquest apunt, alguns videos.

 

 

 

 

Configuració accés SSH router Cisco

Anoto, en aquest apunt, com habilitar l’accés SSH en un router Cisco.

conf t
hostname routerCisco
ip domain-name domini.com
crypto key generate rsa
line vty 0 4
routerCisco(config-line)#login local
routerCisco(config-line)#transport input ssh
username cisco privilege 15 secret cisco

A partir d’ara ja podrem accedir en el router a través de SSH. Si estem en l’entorn de simulació Packet Tracer:

ssh -l cisco iprouter

La línia

transport input ssh

indica que solament permetrem connexions SSH. Si volguéssim habilitar telnet:

transport input telnet

Si volem habilitar ambdós protocols:

transport input all

Ressenya del llibre “Sàpiens. Una breu història de la humanitat”

Tot just aquesta setmana he finalitzat el llibre “Sàpiens. Una breu història de la humanitat“, del professor d’història israelita Yuval Noah Harari.

Haig de dir que es tracta d’una obra molt i molt recomanable. No es tracta pas d’un relat carregat de fets històrics concrets sinó més aviat d’una filosofia de la història humana, des dels inicis de Homo Sapiens fins al que podria ser la seva fi (amb la incorporació d’elements cibernètics – ciborgs, fins a la mateixa alteració genètica de l’ADN). Desitjaria recalcar solament una idea pel que fa a l’evolució humana com a espècie:

És evident que l’organització humana ha tendit cap a estructures socials cada vegada més sofisticades i complexes però que això no ho ha fet pas en benefici dels individus concrets. M’explico: la tendència cap a la urbanització, cap a l’especialització de les activitats econòmiques, cap a la globalització, etc. totes aquestes mostres d’organització social, no han estat pas dirigides per ningú, sinó que han evolucionat així ja que han estat beneficioses per l’espècie però que no tenen perquè haver-ho fet per la nostra felicitat individual.

Aquest procés, malgrat ha estat fantàstic per l’expansió de l’ésser humà (increment del nombre de fills), no té perquè haver estat un fenomen apropiat pels individus. L’autor descriu com “el frau més gran de la història” el traspàs de l’home caçador-recol·lector (que, segons ell, vivia prou bé), a l’agricultor (que es partia l’esquena arrancant males herbes de sol a sol): fou un canvi beneficiós per l’espècie com a tal ja que augmentaren notablement el nombre de fills, però no pas pels humans concrets, que hagueren de treballar molt més i es sotmeteren al perill de la fam. Està clar que també hi va haver homo sàpiens que van seguir caçant i recol·lectant i que no desitjaren incorporar-se a la nova moda sedentària però… sucumbiren…

Aquesta idea em fa pensar en les dues reflexions següents pel que fa al futur:

La destrucció del planeta serà un fet. Els humans ens hem expandit a mesura que ho hem anat arrasant tot (hàbitats, plantes i animals). Som assassins ecològics en sèrie i els “altres” animals han estat les nostres principals víctimes. Difícilment podrem aturar aquesta tendència i és que, mentre hi hagi que ho faci i n’obtingui benefici, els altres queden en inferioritat. Els ecologistes d’avui són els caçadors-recol·lectors extingits d’ahir ?

La modificació genètica de l’espècie humana en serà un altre. En el moment que un equip de científics es posi a alterar la genètica humana, amb l’excusa d’eradicar alguna malaltia o el que sigui, naixerà una nova espècia “sobre-humana” que, d’una manera o altra sotmetrà (exterminarà ? )a la resta.

De totes maneres, el futur està encara per escriure. Tal com deia Sèneca, el temps revelarà la veritat.

 

Nota: Pels interessats en el llibre, fer-vos saber que l’autor ofereix un curs a Coursera (“A brief history of Humankind“).