Ajuda com capturar imagem da webcam
25/09/2017
0
Gente preciso da ajuda de vocês, peguei um exemplo da internet de como tirar foto pela webcam e salvar automaticamente...
sendo que preciso que salve com o nome por exemplo "teste01, teste01, teste02, teste03, teste04, teste05, teste06, teste07,, teste08,, teste09, teste10 "
APENAS 10 fotos, após o "teste10" ele volte a salvar como teste01 sobrescrevendo o teste01 antigo...
além disso, ele esta salvando as fotos na pasta onde o sistema esta instalado, sendo que quero deixar um lugar fixo diferente.
olhem o código.
sendo que preciso que salve com o nome por exemplo "teste01, teste01, teste02, teste03, teste04, teste05, teste06, teste07,, teste08,, teste09, teste10 "
APENAS 10 fotos, após o "teste10" ele volte a salvar como teste01 sobrescrevendo o teste01 antigo...
além disso, ele esta salvando as fotos na pasta onde o sistema esta instalado, sendo que quero deixar um lugar fixo diferente.
olhem o código.
unit Umain; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.ExtCtrls, Vcl.Imaging.pngimage, Frame_Video, Vcl.StdCtrls; type TForm5 = class(TForm) Frame11: TFrame1; Timer1: TTimer; Button1: TButton; Panel1: TPanel; Label1: TLabel; Displayfotofinal: TPanel; fotofinal: TImage; procedure FormCreate(Sender: TObject); procedure Button1Click(Sender: TObject); procedure Timer1Timer(Sender: TObject); procedure fotofinalClick(Sender: TObject); private { Private declarations } public { Public declarations } count: integer; end; var Form5: TForm5; implementation {$R *.dfm} procedure TForm5.Button1Click(Sender: TObject); begin count := 0; Frame11.numCam := 3; Frame11.StartCam; Panel1.Visible := true; timer1.Enabled:=true; end; procedure TForm5.FormCreate(Sender: TObject); begin Frame11.InitFrame; end; procedure TForm5.fotofinalClick(Sender: TObject); begin Displayfotofinal.Visible := false; end; function CountFiles(FilePath: string): integer; var SearchRec: TSearchRec; fileCount: integer; begin fileCount := 0; if FilePath[Length(FilePath)] <> '\\' then FilePath := FilePath + '\\'; if FindFirst(FilePath + '*.png', faAnyFile and not faDirectory, SearchRec) = 0 then begin Inc(fileCount); while FindNext(SearchRec) = 0 do begin Inc(fileCount); end; end; FindClose(SearchRec); result := fileCount; end; procedure TForm5.Timer1Timer(Sender: TObject); var pastaAplicacao: string; NumeroArquivos: integer; nomeArquivo: string; begin Inc(count); Label1.Caption := inttostr(10 - count); if count = 10 then begin Panel1.Visible := false; pastaAplicacao := ExtractFilePath(Application.ExeName); NumeroArquivos := CountFiles(pastaAplicacao); nomeArquivo := pastaAplicacao + '\\teste' + formatfloat('00000', NumeroArquivos) + '.png'; Frame11.tpng.SaveToFile(nomeArquivo); Timer1.Enabled := false; Displayfotofinal.Visible := true; fotofinal.Picture.LoadFromFile(nomeArquivo); Frame11.Stop; end; end; end.
Michell
Curtir tópico
+ 0
Responder
Posts
25/09/2017
Michell
Gente preciso da ajuda de vocês, peguei um exemplo da internet de como tirar foto pela webcam e salvar automaticamente...
sendo que preciso que salve com o nome por exemplo "teste01, teste01, teste02, teste03, teste04, teste05, teste06, teste07,, teste08,, teste09, teste10 "
APENAS 10 fotos, após o "teste10" ele volte a salvar como teste01 sobrescrevendo o teste01 antigo...
além disso, ele esta salvando as fotos na pasta onde o sistema esta instalado, sendo que quero deixar um lugar fixo diferente.
olhem o código.
sendo que preciso que salve com o nome por exemplo "teste01, teste01, teste02, teste03, teste04, teste05, teste06, teste07,, teste08,, teste09, teste10 "
APENAS 10 fotos, após o "teste10" ele volte a salvar como teste01 sobrescrevendo o teste01 antigo...
além disso, ele esta salvando as fotos na pasta onde o sistema esta instalado, sendo que quero deixar um lugar fixo diferente.
olhem o código.
unit Umain; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.ExtCtrls, Vcl.Imaging.pngimage, Frame_Video, Vcl.StdCtrls; type TForm5 = class(TForm) Frame11: TFrame1; Timer1: TTimer; Button1: TButton; Panel1: TPanel; Label1: TLabel; Displayfotofinal: TPanel; fotofinal: TImage; procedure FormCreate(Sender: TObject); procedure Button1Click(Sender: TObject); procedure Timer1Timer(Sender: TObject); procedure fotofinalClick(Sender: TObject); private { Private declarations } public { Public declarations } count: integer; end; var Form5: TForm5; implementation {$R *.dfm} procedure TForm5.Button1Click(Sender: TObject); begin count := 0; Frame11.numCam := 3; Frame11.StartCam; Panel1.Visible := true; timer1.Enabled:=true; end; procedure TForm5.FormCreate(Sender: TObject); begin Frame11.InitFrame; end; procedure TForm5.fotofinalClick(Sender: TObject); begin Displayfotofinal.Visible := false; end; function CountFiles(FilePath: string): integer; var SearchRec: TSearchRec; fileCount: integer; begin fileCount := 0; if FilePath[Length(FilePath)] <> ''\\\\\\\\'' then FilePath := FilePath + ''\\\\\\\\''; if FindFirst(FilePath + ''*.png'', faAnyFile and not faDirectory, SearchRec) = 0 then begin Inc(fileCount); while FindNext(SearchRec) = 0 do begin Inc(fileCount); end; end; FindClose(SearchRec); result := fileCount; end; procedure TForm5.Timer1Timer(Sender: TObject); var pastaAplicacao: string; NumeroArquivos: integer; nomeArquivo: string; begin Inc(count); Label1.Caption := inttostr(10 - count); if count = 10 then begin Panel1.Visible := false; pastaAplicacao := ExtractFilePath(Application.ExeName); NumeroArquivos := CountFiles(pastaAplicacao); nomeArquivo := pastaAplicacao + ''\\\\\\\\teste'' + formatfloat(''00000'', NumeroArquivos) + ''.png''; Frame11.tpng.SaveToFile(nomeArquivo); Timer1.Enabled := false; Displayfotofinal.Visible := true; fotofinal.Picture.LoadFromFile(nomeArquivo); Frame11.Stop; end; end; end.
Galera como o código é muito grande irei upar dois blocos de notas no mega para se alguém poder me ajudar, ou então fazer um acesso remoto pelo teamviewer, isso me ajudaria muito, sou iniciante :/
Umain e Frame_Video
Responder
Clique aqui para fazer login e interagir na Comunidade :)