精华内容
下载资源
问答
  • 算法需要将预览大小与.../*** 获取最佳预览大小* @param parameters 相机参数* @param screenResolution 屏幕宽高* @return*/private Point getBestCameraResolution(Camera.Parameters parameters, Point screenRe...

    算法需要将预览大小与手机的分辨率挂钩,才能够在不同分辨率的手机上面预览都不变形。

    /**

    * 获取最佳预览大小

    * @param parameters 相机参数

    * @param screenResolution 屏幕宽高

    * @return

    */

    private Point getBestCameraResolution(Camera.Parameters parameters, Point screenResolution) {

    float tmp = 0f;

    float mindiff = 100f;

    float x_d_y = (float) screenResolution.x / (float) screenResolution.y;

    Size best = null;

    ListsupportedPreviewSizes = parameters.getSupportedPreviewSizes();

    for (Size s : supportedPreviewSizes) {

    tmp = Math.abs(((float) s.height / (float) s.width) - x_d_y);

    if (tmp < mindiff) {

    mindiff = tmp;

    best = s;

    }

    }

    return new Point(best.width, best.height);

    }

    获取屏幕宽高的方法如下:

    /**

    * 获取屏幕宽度和高度,单位为px

    * @param context

    * @return

    */

    public static Point getScreenMetrics(Context context){

    DisplayMetrics dm =context.getResources().getDisplayMetrics();

    int w_screen = dm.widthPixels;

    int h_screen = dm.heightPixels;

    return new Point(w_screen, h_screen);

    }

    展开全文
  • 微信小程序-获取设备宽高

    千次阅读 2019-08-30 14:11:56
    在开发页面的过程中,有些元素或图片内容的宽高不能写死,否则换台设备可能页面就会导致页面乱了特别难看,于是就打算获取设备屏幕的宽高,用获取的数值给元素的宽高赋值,这样哪怕换了设备页面也能正常显示 ...

    前言

    在开发页面的过程中,有些元素或图片内容的宽高不能写死,否则换台设备可能页面就会导致页面乱了特别难看,于是就打算获取设备屏幕的宽高,用获取的数值给元素的宽高赋值,这样哪怕换了设备页面也能正常显示

    index.wxml

    <view class="main">
      <view class="mainImg">
        <text>我在下面</text>
      </view>
      <view class="mainText" style="height:{{windowHeight}}px;">
        <text ></text>
      </view>
    </view>
    

    index.wxss

    .mian{
      width:100%;
      height:100%;
      position:relative;
    }
    .mainImg{
      position:absolute;
      width:100%;
      z-index:2;
      background-color:green; 
    }
    .mainText{
      width:100%;
      position:absolute;
      z-index:100;
      background-color:rgba(131,139,139,0.5);
    }
    

    index.js

    Page({
      data: {
        windowHeight:'',
        windowWidth:''
      },
      getsize(){
        let that=this;
        wx.getSystemInfo({
          success(res) {
            console.log(res)
            console.log("height="+ res.windowHeight)
            console.log("width="+res.windowWidth)
            that.setData({
              windowHeight:res.windowHeight,
              windowWidth:res.windowWidth
            })
          },
        })
      },
      onLoad: function () {
        this.getsize();
      }
    })
    

    效果

    这里实现的效果是最上层的半透明view根据设备的宽高占满全屏
    在这里插入图片描述
    在这里插入图片描述

    补充

    如果是首页的image图片可能会产生可拖动的情况,添加disableScroll可让页面不可拖动
    index.json

    {
      "usingComponents": {},
      "disableScroll":true
    }
    
    展开全文
  • 用matlab对相机进行标定获取相机内参

    千次阅读 多人点赞 2019-04-23 14:45:23
    本文讲解的是将相机直接连接电脑,用matlab的相机标定工具箱通过相机实时采集一定数量的棋盘格图像,然后计算获取相机内参。 实现: Win10,64系统 matlab R2016a 后续用途: (一)solvepnp 单目三维位姿...

    常见的相机标定方式是张正友的棋盘格标定法,即用相机拍摄打印好的棋盘格图图像,将图像传入函数计算出相机的内参数据。

    本文讲解的是将相机直接连接电脑,用matlab的相机标定工具箱通过相机实时采集一定数量的棋盘格图像,然后计算获取相机内参。

     

    实现:

    Win10,64系统

    matlab R2016a

     

    后续用途:

    (一)solvepnp 单目三维位姿估计--------理论

    (二)solvepnp 单目三维位姿估计--------利用二维码求解相机世界坐标


    Step1 打开相机标定工具箱

     1

     在《图像处理和计算机视觉》栏 找到相机标定工具:

    在弹出的上图中点击红色下拉三角,选择 “From camera” 即工具箱会读取外接相机然后实时画面获取图像。

     

    如果此期间弹出错误,提示未安装web camera的相应的包,那么需要你额外安装下对应的包;

    安装方式为:

    在主页中选择 “附加功能” 选择 “Get Hardware support packages”  

    在网络条件好的情况选择网络安装,下一步;

     

     查看支持安装的所有包,找到USB Webcams 这个USB相机包 文件,点击Next安装。

     

    如此,安装了能够读取外部USB相机的包后,用matlab打开相机就不再出错了。

     


    Step 2 读取相机开始采集图像做标定

    在上一步中 From camera后,正确连接相机的情况下,会出现下图:

     选择待会用相机采集图像后保存图像的路径;选择每次采集图像的间隔时间(默认5秒),选择共采集多少张图(默认20张);

    选择完毕后点击Capture 进行采集;

    使用方式是你可以将棋盘格打印出来后贴在墙上,拿着摄像头从各个角度拍摄采集棋盘格图像;或者你固定相机不动,将棋盘格固定在平坦物上,让棋盘格动;我选择前者。

     

    选择Capture后会弹出下图,让你填写棋盘格网格实际物理尺寸(默认25mm),实际常用的网格图大小也差不多,我的是26mm

    è¿éåå¾çæè¿°

    开始采集图像:

     

    实际采集20张图像后即停止采集,我 在选项中选择了 3阶径向畸变系数,计算切向畸变系数。

    只要你的重投影整体平均误差小于0.5像素即可:

     下图是标定过程中以相机为中心视角的外参情况:

    下图是以棋盘格为中心视角的外参 情况:


    Step 3 导出标定数据

     

    我们可以导出得到相机的内参信息:

     

    上图划红线解释依次为:

    径向畸变系数(3阶),切向畸变系数(2阶),世界坐标单位是mm,内参矩阵,焦距(分fx,fy),成像平面原点(理想情况是图像宽高中心位置),成像平面原点坐标(单位是像素);

    获取如上信息后则可以对相机做矫正,做PnP相机位姿估计啦~ 

    展开全文
  • Camera预览尺寸和获取屏幕宽高

    千次阅读 2017-04-14 14:43:34
    算法需要将预览大小与手机的分辨率挂钩,才能够在不同分辨率的手机上面预览都不变形。... * @param screenResolution 屏幕宽高 * @return */ private Point getBestCameraResolution(Camera.Parameters parameter

    算法需要将预览大小与手机的分辨率挂钩,才能够在不同分辨率的手机上面预览都不变形。


    /**
     * 获取最佳预览大小
     * @param parameters 相机参数
     * @param screenResolution 屏幕宽高
     * @return
     */
    private Point getBestCameraResolution(Camera.Parameters parameters, Point screenResolution) {
        float tmp = 0f;
        float mindiff = 100f;
        float x_d_y = (float) screenResolution.x / (float) screenResolution.y;
        Size best = null;
        List<Size> supportedPreviewSizes = parameters.getSupportedPreviewSizes();
        for (Size s : supportedPreviewSizes) {
            tmp = Math.abs(((float) s.height / (float) s.width) - x_d_y);
            if (tmp < mindiff) {
                mindiff = tmp;
                best = s;
            }
        }
        return new Point(best.width, best.height);
    }


    获取屏幕宽高的方法如下:

    /**
     * 获取屏幕宽度和高度,单位为px
     * @param context
     * @return
     */
    public static Point getScreenMetrics(Context context){
       DisplayMetrics dm =context.getResources().getDisplayMetrics();
       int w_screen = dm.widthPixels;
       int h_screen = dm.heightPixels;
       return new Point(w_screen, h_screen);
       
    }




    展开全文
  • unity3D获取屏幕宽高

    千次阅读 2017-10-14 09:39:52
    看了官方文档,现在我们知道怎么获取屏幕的实际宽高,下面是示例代码: private float width ; private float height ; void SetBasicValues(){ float leftBorder ; float rightBorder ; float top...
  • 利用深度相机获取点云二维图像 将二维图像通过相机内参转换成点云 取局部点云,对点云进行平面拟合(采用的是SVD分解),利用最小特征值对应的特征向量为平面法向量 利用深度相机获取点云二维图像 深度相机原理...
  • * 通过对比得到与宽高比最接近的尺寸(如果有相同尺寸,优先选择) * * @param surfaceWidth * 需要被进行对比的原宽 * @param surfaceHeight * 需要被进行对比的原高 * @param preSizeList
  • using UnityEngine; using System.Collections; public class CameraView : MonoBehaviour { private Camera theCamera; //距离摄像机8.5米 用黄色表示 ... public float upperDistance = 8.5...
  • 看了官方文档,现在我们知道怎么获取屏幕的实际宽高,下面是示例代码: private float width; private float height; void SetBasicValues(){ float leftBorder; float rightBorder; float topBorder; float ...
  • 海康工业相机参数设置与获取

    千次阅读 2021-02-08 14:59:48
    海康工业相机参数设置与获取通用接口介绍相机参数设置获取二级目录 通用接口介绍 相机参数设置获取 二级目录
  • 基于屏幕的宽度和包含底部虚拟按钮的屏幕高度的比值,然后从camera获取其参数——Camera.Parameters,利用camera参数获取相机支持的预览尺寸集,即:getSupportedPreviewSizes()(返回值为List),从中选择出宽高比...
  • &lt;... * 先解析计算出图片的经纬度,然后根据经纬度使用高德地图提供逆向地理编码接口获取定位信息; * 需在高德申请key * 高德接口地址:http://lbs.amap.com/api/webservice/guide/api/ge...
  • 解决Android 6.0以上的版本跳转相机闪退问题,以及相机返回图片不显示问题。 AndroidManifest.xml 中添加权限 <manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools=...
  • OpenCV的Android环境具体搭建过程,请参考Android 使用OpenCV的三种方式(Android Studio),并不在本文的范围之内。本文将OpenCV需要的依赖打成了opencvlib-...本文旨在介绍OpenCV打开相机获取缓冲帧并保存的方法。Op
  • // bitmap 工具 压缩图片 设置宽高并根据宽高计算比例 /** * 作者: Nade_S on 2018/2/28. * 大图压缩 */ public class BitmapUtils { // 计算比例 public static int ...
  • React Native获取设备高及像素密度 import * as React from 'react'; import { Text, View, StyleSheet, Dimensions, PixelRatio } from 'react-native'; var windowWidth = Dimensions.get('window').width //...
  •  * 获取图片的宽高  */  BufferedImage sourceImg = ImageIO.read( new FileInputStream( newFile ) );    double width = sourceImg.getWidth();  double height = sourceImg.getHeight();  ...
  • 最近在开发中遇到一个问题,我通过调用系统相机拍照,然后获取到我拍的照片,但每次取到了照片都是被压缩过的。达不到我的需求,后台通过看很多大神的文章,终于实现了我想要的效果。 第一步:调用相机,并设置保存...
  • 1、获取权限   2、点击按钮来提示选择图库还是相机 private String[]mCustomItems=new String[]{"本地相册","相机拍照"}; //显示选择相机,图库对话框 private void showDialogCustom(){ //创建对话框 ...
  • 打开相机拍照和从本地相册获取图片以及图片的剪切
  • Android调用相机拍照,获取原始照片的解决方案如下: 注意要有读取文件的权限,需要添加如下的权限: 按钮点击事件:  public void click(View view) {  Intent intent = new Intent(MediaStore.ACTION_IMAGE_...
  • 相册获取相机拍摄,裁剪圆形头像 应用场景 很多应用都有个人中心,个人中心就会有头像,现在一般都流行圆形头像,那么怎么设置呢 使用步骤 这里参考了网上各位大神的文章,因为中途遇到几个坑,折磨了一天,...
  • 在使用深度相机获取数据时,由于硬件自身问题,获取的数据,表面噪声很大,数据波动很大,这里需要对数据流进行处理。可参考一下两个链接: https://dev.intelrealsense.com/docs/post-processing-filters ...
  • SDK提供注册回调函数的接口,用户可以将自己定义的回调函数注册在SDK内部,SDK获取相机图像会主动回调到应用程序供用户处理,此方式可以简化用户程序逻辑。 一、流程 •回调取图方式使用场景: 可以使用 MV...
  • android调用系统相机获取图片

    千次阅读 2018-11-05 12:02:42
    调用系统相机很简单,只需要一个intent就可以跳转到相几界面,然后再通过onActivityResult来取得图片即可。 Intent openCameraIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); //系统常...
  • 截取图片中的人脸图片(宽高自定义) 圆形图片显示 效果图: 以下只说了大致的实现思路和核心入口代码,详情见demo(文末奉上) 1、圆形相机预览 自定义CircleCameraLayout类,自定义一个轮廓提供者裁剪一个...
  • 调用系统相机/相册获取图片的事,在百度上找一下能搜到一大堆文章,然而拿过来在真机上跑一下大部分都有问题,根本达不到想要的效果。为什么会拿不到想要的图片呢,最主要的原因是因为图片太大,而获取的图片数据是...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 11,908
精华内容 4,763
关键字:

获取相机宽高