首先,这是我在stackoverflow中的第一篇文章.我经常使用这一方,我发现了我需要的几乎所有东西.
现在问我的问题.我搜索了这个问题,但我没有找到任何东西.我想写一个应用程序,我可以点击一个按钮,制作一个人的照片,并将该照片与数据库中的用户链接.是否可以用WIA控制相机?我需要一台特殊的相机吗?
如果有人能为WIA的一般用途发布一个好的教程,我将不胜感激.
我的目标是尽可能提高FPS.我会很满意BW小帧,但FPS应该是最大的.
getSupportedPreviewFpsRange在HTC WildFire S上返回(9,30).但是当我尝试用最简单的处理绘制预览图像时,它在视觉上最大可达到12-15 FPS.设置参数和startPreview()方法调用后,我这样做:
camera.setPreviewCallback(new Camera.PreviewCallback() {
@Override
public void onPreviewFrame(byte[] bytes, Camera camera) {
Bitmap bitmap = Bitmap.createBitmap(size.width, size.height, Bitmap.Config.ARGB_8888);
int[] colors = new int[size.width * size.height];
for (int i=0; i < colors.length; i++){
colors[i] = getBWColor(bytes[i]);
}
bitmap.setPixels(colors, 0, size.width, 0, 0, size.width, size.height);
secondView.setImageBitmap(bitmap);
}
});
}
private static int getBWColor(byte b){
int res = 255;
for(int i=0;i<3;i++){
res = (res << 8) + b;
}
return res;
}
Run Code Online (Sandbox Code Playgroud)
有没有办法尽可能快地得到它?=(
我有一个使用静态相机拍摄移动部件的视频.我希望跟踪和分析视频中各个部分的坐标.但坐标值受相机移动的影响.如何校准相机抖动?我在视频中没有任何静态点(视频的顶部和底部边缘除外).
我希望得到的是(质心,可能是)调整相机抖动的移动部件的坐标.我使用MATLAB的计算机视觉工具箱来处理视频.
有没有人对使用iOS的Flex 4.6中的Camera API有任何经验?我遇到了很多设置问题,缺乏文档.我正在尝试设置图片上传组件,用户可以在其中捕获新照片或从库中选择现有照片.
对于捕获,当图像保存为JPEG时,似乎有一个巨大的挂起(例如10秒,应用程序只是无响应),而我正在使用Alchemy swc.
private var cam:CameraUI;
protected function takePhotoHandler(event:MouseEvent):void
{
if(CameraUI.isSupported) {
cam = new CameraUI();
cam.addEventListener(MediaEvent.COMPLETE, mediaEventComplete);
cam.launch(MediaType.IMAGE);
}
}
protected function mediaEventComplete(e:MediaEvent):void
{
cam.removeEventListener(MediaEvent.COMPLETE, mediaEventComplete);
status.text = "Media captured..." ;
var imagePromise:MediaPromise = e.data;
var loader:Loader = new Loader();
if(imagePromise.isAsync) {
status.text = "Asynchronous media promise." ;
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, asyncImageLoadHandler);
loader.addEventListener(IOErrorEvent.IO_ERROR, asyncImageErrorHandler);
loader.loadFilePromise(imagePromise);
} else {
status.text = "Synchronous media promise.";
loader.loadFilePromise(imagePromise);
img.source = loader.content;
saveImage(loader.contentLoaderInfo);
}
}
protected function asyncImageLoadHandler(e:Event):void
{
status.text = "Media loaded in …Run Code Online (Sandbox Code Playgroud) 我正在尝试模仿相机应用程序从前到后相机的过渡..它使用UIViewAnimationOptionTransitionFlipFromLeft ..
我目前的方法是使用前置摄像头拍摄照片,切换到后置摄像头,使用后置摄像头拍摄照片,将其加载到两个UIImageViews中并使用图像视图执行转换..(在此过程中隐藏当前的摄像头流)..
问题是,当我从前置摄像头切换到后置摄像头时,cameraView(一个AVCapturePreviewLayer)会在我隐藏它之前立即切换视图(这发生在最后一行的flipCameraToFront中.. [_captureSession commitConfiguration])...
希望这是有道理的,继承人的一些代码我省略了一些,如果你认为它会帮助我知道,我会发布其余部分.
任何帮助将不胜感激,谢谢
//class:RecordViewController
//iVars for this class..
RecordVideoHandler *_recordHandler;
UIImage *_firstImageForFlip;
UIImage *_secondImageForFlip;
UIImageView *_firstImageViewForFlip;
BOOL isUsingFrontInput;
AVCaptureVideoPreviewLayer *_capturePreviewLayer;
UIView *_capturePreviewView;
- (void)doCameraFlip:(UIButton *)sender
{
[_recordHandler addStillImageOutput];
//This method calls imageReturned:(UIImage *)inImage;
[_recordHandler captureAndReturnStillImage];
}
- (void)imageReturned:(UIImage *)inImage{
if(_firstImageForFlip == nil){
[_capturePreviewLayer setFrame:CGRectZero];
_firstImageForFlip = inImage;
_firstImageViewForFlip = [[UIImageView alloc] initWithImage:_firstImageForFlip];
if(isUsingFrontInput)
[_firstImageViewForFlip setTransform:CGAffineTransformMakeScale(-1.0, 1.0)];
[_firstImageViewForFlip setFrame:_capturePreviewView.bounds];
[_capturePreviewView addSubview:_firstImageViewForFlip];
if(isUsingFrontInput){
[_recordHandler flipCameraToBack];
}else{
[_recordHandler flipCameraToFront];
}
[_recordHandler captureAndReturnStillImage];
}else{
_secondImageForFlip = inImage;
[_recordHandler removeStillImageOutput]; …Run Code Online (Sandbox Code Playgroud) 我已经在我们的应用程序中添加了一个扫描条形码的插件,现在我正在检查设备型号(即iPhone4,1)以查看它是否是具有自动对焦相机的新设备.这当然要求我们每次出现时都要添加新设备,否则我们将忘记这样做,即使他们应该能够扫描条形码,用户也无法扫描条形码.
我想要做的是检查设备是否有自动对焦相机,并使用它来允许或拒绝用户尝试扫描条形码.谁知道怎么样?
有没有人知道是否有办法在相机视图上粘贴自定义按钮,以允许用户从他们的库中选择照片,如oink或instagram,而无需自定义视图?谢谢!
编辑
叠加层似乎很容易添加按钮; 有谁知道如何从那里实际显示照片库并使用该人选择的内容?
有没有办法迫使iPhone以30fps录制,无论光线条件如何?
有没有办法迫使iPhone相机通过降低分辨率以更高的fps录制?
除了分析录制的流之外,找出iPhone FPS的最佳方法是什么?
我的主要目标是iPhone4或4S.
贝娄是我的didFinishPickingMediaWithInfo方法,我知道我有很多不必要的代码,保留,发布等...但这是我可以让它工作的方式,我害怕打破它试图优化它.
任何人都可以帮我脱掉不必要的东西,让这种方法干净吗?
此外,我有一个视图控制器,将加载4张照片(相机胶卷或相机),并在选择器的第二或第三张照片选择,应用程序崩溃或至少,我收到以下这些警报之一.我做错了什么?谢谢!
-2012-06-23 10:54:07.399 LookdoDia [6525:707]收到内存警告.
-wait_fences:未收到回复:10004003
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
[self dismissModalViewControllerAnimated:YES];
UIImage *img = [info objectForKey:UIImagePickerControllerEditedImage];
if(!img) img = [info objectForKey:UIImagePickerControllerOriginalImage];
uiimvImagem.image = [img retain];
uiimvImagem.alpha = 0;
UIImageView *tempImageView = [[UIImageView alloc] initWithImage:img];
self.uiimvImagem = [tempImageView retain];
[tempImageView release];
CGRect frame = uiimvImagem.frame;
frame.size.width = 359;
frame.size.height = img.size.height / (img.size.width / 359);
uiimvImagem.frame = frame;
uisv1.showsVerticalScrollIndicator = NO;
uisv1.showsHorizontalScrollIndicator = NO;
uisv1.contentSize = CGSizeMake(uiimvImagem.frame.size.width, uiimvImagem.frame.size.height);
uisv1.maximumZoomScale = 3.0;
uisv1.minimumZoomScale = 0.8;
uisv1.clipsToBounds = …Run Code Online (Sandbox Code Playgroud) camera ×10
ios ×6
iphone ×2
photo ×2
android ×1
apache-flex ×1
autofocus ×1
c# ×1
cordova ×1
flex-mobile ×1
frame-rate ×1
matlab ×1
video ×1
wia ×1