起名什么的很麻烦 2019-01-17 10:48 采纳率: 50%
浏览 1670
已结题

安卓手机代替扫描枪识别产品条形码,最终生成表格统计信息,现手机传送图片到电脑这步卡住

问题:手机如何实时传送摄像头的视频流到电脑端. 列出可行思路就行或解答我的疑问
手机是安卓7.0以上系统 android studio 3.2. 电脑是win7-win10系统 C# VS2015编程.
网络是局域网,IP可以固定下来.
PS:我的想法 手机实时录制视频流,采用间隔0.1秒采集一次图像,压缩成特定格式,再把特定格式压缩包发给电脑,电脑解码成图像,给halcon识别图像,识别出来的信息输入到表格里.
PS2:进度 安卓采集图像 搞定
安卓压缩图像 没搞定 没思路
安卓传输压缩包 没搞定 没思路
电脑接收压缩包 没搞定 完全没想法
电脑解码 没搞定 完全不懂
halcon识别图像(里面有3个条形码) 成字符串 搞定

字符串导入表格 搞定
PS3:疑问1 我传输的是0.1秒一次,就算是高清的图片,是不是不用压缩也不会对公司局域网形成干扰.
疑问2 传送压缩包或图片,并接收这两步完全没想法

  • 写回答

1条回答 默认 最新

  • X峰 2019-01-17 17:00
    关注

    压缩包传送,可以用流来传输(I/O)文件流。
    图片一般也是文件流或者直接base64
    图片压缩:
    /**
    * 压缩图片(质量压缩)
    * @param bitmap
    */
    public static File compressImage(Bitmap bitmap) {
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    bitmap.compress(Bitmap.CompressFormat.JPEG, 100, baos);//质量压缩方法,这里100表示不压缩,把压缩后的数据存放到baos中
    int options = 100;
    while (baos.toByteArray().length / 1024 > 500) { //循环判断如果压缩后图片是否大于1024kb,大于继续压缩
    baos.reset();//重置baos即清空baos
    options -= 10;//每次都减少10
    bitmap.compress(Bitmap.CompressFormat.JPEG, options, baos);//这里压缩options%,把压缩后的数据存放到baos中
    long length = baos.toByteArray().length;
    }
    SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmss");
    Date date = new Date(System.currentTimeMillis());
    String filename = format.format(date);
    File file = new File(Environment.getExternalStorageDirectory(), filename + ".png");
    try {
    FileOutputStream fos = new FileOutputStream(file);
    try {
    fos.write(baos.toByteArray());
    fos.flush();
    fos.close();
    } catch (IOException e) {
    // BAFLogger.e(TAG,e.getMessage());
    e.printStackTrace();
    }
    } catch (FileNotFoundException e) {
    // BAFLogger.e(TAG,e.getMessage());
    e.printStackTrace();
    }
    recycleBitmap(bitmap);
    return file;
    }

    评论

报告相同问题?

悬赏问题

  • ¥15 maixpy训练模型,模型训练好了以后,开发板通电会报错,不知道是什么问题
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 有没有帮写代码做实验仿真的
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容
  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题