一个小项目,大家给点意见
一个朋友托我做一个现场招生小系统,
五台机器,五个老师现场给考生打分,
并现场用数码相机或者摄像头采集照片,
结束后,立即可在网上查询成绩,以及一些相关信息。
小弟还是个学生,用BCB做过一个小的管理信息系统(挺失败的一个系统),
凭两个人的力量不知道有没有能力完成,特别是那个摄象头采集照片不知容不容易做?
还有就是哪里有比较正式点的文档模板?比如说我现在需提交一份自己的简单设计方案之类的文档
?(想做得有点专业水平的样子)
我的mail:jakeding@sohu.com,拜托大家,多发点好东东给我参考参考。
麻烦大家给点意见:)给点鼓励我:)发现对自己没什么信心:)
问题点数:100、回复次数:10Top
1 楼fromv(阿松)回复于 2004-09-03 09:02:05 得分 10
只要摄象头给你提供读照片数据的方法就可以。
不过觉得摄像头采集数据跟招生没有什么关系,不会在网上公布的。顶多作为没有舞弊的旁证而已。
至于在网上查询成绩倒是可以做的,有一定市场需求的。
比较正式点的文档模板可以在用关键字“软件管理文档”在网上搜到,很多的。Top
2 楼Lonelywolf1899(プログラマ)回复于 2004-09-03 09:04:32 得分 0
对呀,采集照片和网上查询成绩,是两回事啊,要做就要分两个程序.Top
3 楼jakeding(丁丁)回复于 2004-09-03 16:28:27 得分 0
这是一个舞蹈班招生的系统,
采集照片,只是作为一个现场的凭证,
像这样一个系统用BCB来做,合不合适??
打算就用BCB+Access,利用C/S结构来做,大虾们给点意见
Top
4 楼zlc990405(alfred)回复于 2004-12-04 19:20:26 得分 0
接分来啦!
Top
5 楼xiaomatian(趴趴熊◎%#……※×)回复于 2004-12-04 20:04:25 得分 0
采集照片和网上查询没关系的啊。分开做就是了Top
6 楼raid79(山鹰)回复于 2004-12-05 10:39:02 得分 0
不知道怎么采集照片Top
7 楼flowercity(菜农)回复于 2004-12-05 11:14:32 得分 20
采集照片以及视频,我做过
不过要买视频采集卡之类的东西
建议两种方法:
一:到电脑城买很普通的一个视频头,人家一般都送一个软件,绘声绘色,你可以借助这个软件来
采集照片,然后保存图片到数据库,供程序调用。
二:买专门的图像采集卡,一般都提供接口函数给你用,比如天敏视频采集卡。
当然了,我做过的视频采集,是很贵的,呵呵,用来做银行系统监控用的,有报警功能Top
8 楼redcony()回复于 2004-12-05 11:15:20 得分 0
应该没有问题了,用数码相机或者摄像头采集照片,只是用来在网上发布而已,比较简单Top
9 楼woainihaha(笨笨)回复于 2004-12-05 18:35:31 得分 30
1.网站页面规划为动态页面,所有相关内容除页面框架外使用WebService或Asp,PHP之类导入数据库可内容。
2。做一个Application,使用DirectShow采集图像(数码相机驱动先安装好,并连接承购),将采集的图像,老师打成绩的项目写入到与网页相关的数据库即可。
说明,DirectShow采集图像代码可参考DirectShow自带的例子,如你不熟悉Asp,PHP之类语言,可以使用BCB的WebService Application 。Top
10 楼tccsdn(紫乐)回复于 2004-12-05 22:20:04 得分 40
没必要用DIRECTSHOW来做,感觉小题大做了,在运行的电脑上还要装DX9,有个DSPACK控件可以用,封装了DIRECTSHOW,几行代码可以搞定的,建议用VFW来做,给你个列子代码
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
#include <vfw.h>
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
LRESULT CALLBACK FrameCallBack( HWND hwnd, Longint lpvhdr );
HWND hCapWnd,vc1;
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
LRESULT CALLBACK FrameCallBack( HWND hCapWnd, Longint lpvhdr )
{
LPVIDEOHDR VideoStr;
static BITMAPINFOHEADER BitmapHead;
static BITMAPINFO BitmapInfo;
static BITMAPFILEHEADER BitmapFileHead;
CAPSTATUS status;
int BIHsize, byte;
Byte *ptr;
TMemoryStream *stream = new TMemoryStream;
VideoStr=LPVIDEOHDR(lpvhdr);
capGetStatus( hCapWnd, &status, sizeof(status) ) ;
BIHsize=capGetVideoFormatSize( hCapWnd );
capGetVideoFormat( hCapWnd, &BitmapHead, BIHsize);
BitmapInfo.bmiHeader=BitmapHead;
stream->Size=sizeof(BitmapFileHead) + sizeof(BitmapHead) + BitmapHead.biSizeImage-2;
BitmapFileHead.bfType=0x4D42;
BitmapFileHead.bfSize=stream->Size;
BitmapFileHead.bfOffBits=sizeof(BitmapFileHead) + sizeof(BitmapHead)-2;
stream->Position=0;
stream->WriteBuffer( &BitmapFileHead, sizeof(BitmapFileHead) );
stream->WriteBuffer( &BitmapInfo, sizeof(BitmapInfo) );
stream->WriteBuffer( &BitmapFileHead.bfReserved1, sizeof(BitmapFileHead.bfReserved1) );
stream->WriteBuffer( &BitmapFileHead.bfReserved2, sizeof(BitmapFileHead.bfReserved2) );
stream->WriteBuffer( &BitmapFileHead.bfOffBits, sizeof(BitmapFileHead.bfOffBits) );
stream->WriteBuffer( &BitmapInfo, sizeof(BitmapInfo) );
(void*)ptr=stream->Memory;
ptr += BitmapFileHead.bfOffBits;
Move( VideoStr->lpData, ptr, BitmapHead.biSizeImage);
stream->Position=0;
Form1->Image1->Picture->Bitmap->LoadFromStream(stream);
delete( stream );
capSetCallbackOnFrame (hCapWnd, NULL);
return(0);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
capSetCallbackOnFrame (hCapWnd, &FrameCallBack);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
hCapWnd = capCreateCaptureWindow ( "Capture Window",
WS_CHILD | WS_VISIBLE ,0,0,Panel1->Width,Panel1->Height,Panel1->Handle, 0);
bool a = false;
for(int i=0;i<10;i++)
{
a=capDriverConnect(hCapWnd,i);
if( a ) break;
}
if( !a )
ShowMessage("没有找到摄象头");
capPreviewRate(hCapWnd,66);
capPreview(hCapWnd,true);
}
//---------------------------------------------------------------------------Top




