Programar (ajuda)

: Outro Veiculos & Projectos : Vendas : Procuras :
User avatar
tiagok
Posts: 52
Joined: 21 May 2011 13:16

Programar (ajuda)

Post by tiagok »

Boas , a todos umas boas entradas , e que o melhor de 2011 seja o pior de 2012 :D :D :$
bem, eu gostava de saber se alguém aqui sabe programar, programar em matlab , é que estou a fazer um projecto e precisava de ajuda, pois a minha experiência com programação não é muita...
caso saibam alguém, por favor digam (:

comprimentos,
Tiago

User avatar
RicardoV
✘✘
Posts: 1021
Joined: 25 Jul 2010 12:55

Re: Programar (ajuda)

Post by RicardoV »

O google é o melhor amigo do programador.

Digo isto não por má vontade, mas quem tem experiência pode apenas ter em algumas vertentes que nada te beneficiam. Umas pesquisas levam-te sempre no bom caminho..ah...com trabalho claro!

Abraço
Image

User avatar
tiagok
Posts: 52
Joined: 21 May 2011 13:16

Re: Programar (ajuda)

Post by tiagok »

eu sei que sim, alias, é amigo de toda gente mesmo..

pois, eu conheço gente que programa, mas em matlab é muito raro s:
enfim, vou ficando a aguardar , até que vou encontrando soluções para as minhas duvidas...

f_valentim
✘✘
Posts: 1128
Joined: 24 Jan 2007 19:01

Re: Programar (ajuda)

Post by f_valentim »

Normalmente uso o w3school. Tem muitos exemplos.
Powered by AMSOIL

Albarda-se o burro à vontade do dono.

User avatar
tiagok
Posts: 52
Joined: 21 May 2011 13:16

Re: Programar (ajuda)

Post by tiagok »

Obrigado, penso que daria jeito mais para outras programações.. quem sabe se uso outra linguagem no futuro ..
obrigado não conhecia, mas também não encontrei na linguagem matlab... ou vi mal ?

f_valentim
✘✘
Posts: 1128
Joined: 24 Jan 2007 19:01

Re: Programar (ajuda)

Post by f_valentim »

Nunca precisei. Não sei.
Powered by AMSOIL

Albarda-se o burro à vontade do dono.

User avatar
Nirvana
✘✘✘✘✘
Posts: 4144
Joined: 24 Jan 2007 13:47

Re: Programar (ajuda)

Post by Nirvana »

Trabalhei cerca de 3 anos em matlab, essencialmente para tirar partido das funcionalidades do "image toolbox" pois a minha área é processamento de imagem/vídeo.

Neste site encontras milhares de exemplos e aplicações partilhadas por outros utilizadores, basta pesquisar:
http://www.mathworks.com/matlabcentral/fileexchange/

Começa por ler uns tutoriais, é uma linguagem muito simples:
http://www-ssdp.dee.fct.unl.pt/leec/pds/matlab.pdf
Ditado VW: Devagar que tenho pressa

User avatar
tiagok
Posts: 52
Joined: 21 May 2011 13:16

Re: Programar (ajuda)

Post by tiagok »

Obrigado, estes 2 links vai dar uma grande ajuda mesmo,
muito obrigado (:

User avatar
CaRochinha
Posts: 857
Joined: 03 Apr 2011 17:33
Location: Madeira - PORTUGAL

Re: Programar (ajuda)

Post by CaRochinha »

Matlab Tiago! :shock:
Ui, onde isso já lá vai... fiz um projecto com essa linguagem na Universidade, como o tempo passa!
Infelizmente, já não me recordo de quase nada!

Mas os links que o Nirvana disponibilizou, estão interessantes!
Boa sorte nesse projecto, Tiago!
Atenciosamente,
Roberto & Clélia Rochinha Henriques

Image

User avatar
tiagok
Posts: 52
Joined: 21 May 2011 13:16

Re: Programar (ajuda)

Post by tiagok »

loool, pois eu tou na universidade, podiam usar algo mais universal, enfim, tenho de fazer na mesma...

sim, os link's estão a dar muito jeito , principalmente o primeiro! (:

obrigado (:

User avatar
Nirvana
✘✘✘✘✘
Posts: 4144
Joined: 24 Jan 2007 13:47

Re: Programar (ajuda)

Post by Nirvana »

Boas,

Li hoje o enunciado do trabalho que colocaste noutro fórum de informática. :mrgreen:
Para o que te é pedido, o MatLab deve ser das linguagens mais simples para resolveres o problema, pois tem as funções que vais precisar já implementadas, apenas tens que pesquisar (no help do MatLab, google, etc) que funções melhor se adequam a cada uma das sub-tarefas do teu programa.

Em C, C++, C#, Java, Visual Basic, ou qualquer outra linguagem ias ter muito mais trabalho e dificuldade.
Não acreditas!? :P Eu deixo-te um pequeno exemplo para mostrar a diferença de complexidade ...

***************************************************************************************************************
Exemplo: Ler o conteúdo de uma imagem .PGM para uma variável
***************************************************************************************************************
No matlab apenas tens que fazer este comando:
matriz_imagem = imread('exemplo.pgm');
Que irá ler o conteúdo (pixels) do ficheiro "exemplo.pgm" e gravar numa variável de nome "matriz_imagem" (o matlab gera uma matriz com as mesmas dimensões Comprimento x Largura da imagem "exemplo.pgm")

***************************************************************************************************************
Para fazer o mesmo em linguagem C ...

Precisas de definir uma estrutura que representa os dados de uma imagem (é no mínimo necessário a informação do comprimento, da largura, e dos pixels):
typedef struct _IR_Image {
int width;
int height;
unsigned char *pixelDataIRGray;
} IR_Image;
Precisas de escrever a função que será responsável por abrir o ficheiro, ler o seu conteúdo e gravar essa informação na estrutura de nome "IR_Image" acima definida:
IR_Image *readPGM(const char *filename){ // Le imagem PGM

char buff[16];
IR_Image *img;
FILE *fp;
int c, pgm_comp_color;

// Abre ficheiro PPM para leitura
fp = fopen(filename, "rb");
if (!fp){
fprintf(stderr, "Unable to open file '%s'\n", filename);
exit(1);
}

// Le cabeçalho da imagem
if (!fgets(buff, sizeof(buff), fp)){
perror(filename);
exit(1);
}

// Verifica o formato da imagem
if (buff[0] != 'P' || buff[1] != '5'){
fprintf(stderr, "Invalid image format (must be 'P5')\n");
exit(1);
}

// Aloca memoria para a estrutura da imagem
img = (IR_Image *)malloc(sizeof(IR_Image));
if (!img){
fprintf(stderr, "Unable to allocate memory\n");
exit(1);
}

// Verifica comentarios
c = getc(fp);
while (c == '#'){
while (getc(fp) != '\n');
c = getc(fp);
}
ungetc(c, fp);

// Le informacao do tamanho da imagem
if (fscanf(fp, "%d %d", &img->width, &img->height) != 2){
fprintf(stderr, "Invalid image size (error loading '%s')\n", filename);
exit(1);
}


if (fscanf(fp, "%d", &pgm_comp_color) != 1){
fprintf(stderr, "Invalid component (error loading '%s')\n", filename);
exit(1);
}

if (pgm_comp_color != 255){
fprintf(stderr, "'%s' does not have 8-bits components\n", filename);
exit(1);
}

while (fgetc(fp) != '\n');
// Aloca memoria para os pixels
img->pixelDataIRGray = (unsigned char*)malloc(img->width * img->height);

if (!img){
fprintf(stderr, "Unable to allocate memory\n");
exit(1);
}

// Le pixels do ficheiro
if (fread(img->pixelDataIRGray, img->width, img->height, fp) != img->height){
fprintf(stderr, "Error loading image '%s'\n", filename);
exit(1);
}

fclose(fp);


return (img);

}
Podes agora finalmente em qualquer ponto do teu programa ler uma imagem PGM... (repara como só depois de todas estas linhas escritas consegues ter aquela que é equivalente à do exemplo com utilização em MatLab):
IR_Image *matriz_imagem = readPGM("exemplo.pgm");
Quando essa variável não for mais necessária, é preciso libertar o espaço que está a ocupar em memória:
free(matriz_imagem->pixelDataIRGray);
free(matriz_imagem);
***************************************************************************************************************

Isto apenas para te mostrar que as funções já implementadas no MatLab vão poupar-te quase a totalidade do trabalho que terias ao programar noutra linguagem. Apenas precisas de saber o que faz cada função e que "coisas" recebe e devolve, podes assim abstrair-te de todo o processamento intermédio que é feito no interior da função.

Quando se tem pouca experiência a programar tudo parece confuso, mas evita cair na tentação de procurar programas idênticos já feitos, ou de pedir a terceiros que resolvam isso. Só assim irás realmente aprender... :wink:
Ditado VW: Devagar que tenho pressa

User avatar
tiagok
Posts: 52
Joined: 21 May 2011 13:16

Re: Programar (ajuda)

Post by tiagok »

sim, eu já trabalhei um pouco em C+ no secundário, e pascal também...
só que no matlab, as funções são diferentes..
o que está em causa não é perceber o problema, mas sim, conhecer as funções do matlab, eu sei o que tenho de fazer, preciso é de saber que função irei utilizar...

eu sei que vou chegar "lá", com um pouco de treino, o programa já tá a meio, a caminhar para o fim ((:
sozinho e com ajudas, lá vou conseguindo tirar as duvidas...
sim com o google, e o help do matlab...

(;

User avatar
CaRochinha
Posts: 857
Joined: 03 Apr 2011 17:33
Location: Madeira - PORTUGAL

Re: Programar (ajuda)

Post by CaRochinha »

Nirvana wrote:...
Quando se tem pouca experiência a programar tudo parece confuso, mas evita cair na tentação de procurar programas idênticos já feitos, ou de pedir a terceiros que resolvam isso. Só assim irás realmente aprender... :wink:
Concordo plenamente, Nirvana!
Tiago, força no Matlab, pois só experimentando é que irás compreender! :wink:
Bom trabalho!
Atenciosamente,
Roberto & Clélia Rochinha Henriques

Image

User avatar
tiagok
Posts: 52
Joined: 21 May 2011 13:16

Re: Programar (ajuda)

Post by tiagok »

obrigadoo (:

User avatar
tiagok
Posts: 52
Joined: 21 May 2011 13:16

Re: Programar (ajuda)

Post by tiagok »

Boas, o projecto já tá feito (:
Obrigado a quem ajudou =D
ficou impecável (: e consegui tirar todas as duvidas (:

Post Reply