文档章节

JavaCV CentOS7编译

抢小孩糖吃
 抢小孩糖吃
发布于 2017/06/23 20:53
字数 580
阅读 88
收藏 1
点赞 0
评论 0

编者注

之前在Mac上简简单单就可以直接使用了,但是迁移到了CentOS,JavaCV获取相同的mov帧数时,总是获取0帧。在CentOS 6尝试编译各种缺少库,编译出现问题。这里仅仅只记录CentOS7

CentOS7

更新到最新环境

yum update

安装git

CentOS7刚刚安装好后是没有git的,需要重新安装git

yum install git -y

安装编译所使用的其他库

yum install -y autoconf automake cmake freetype-devel gcc gcc-c++ git libtool make mercurial nasm pkgconfig zlib-devel

javacpp-presets

javacpp-presets项目,是由JavaCV作者团队创建的,自动编译OpenCV、ffmpeg等JavaCV所用到的基础类库的自动编译。
根据官方文档让安装java7以上和maven

yum install java -y
yum install maven -y

使用git下载javacpp-presets

cd ~/build
git clone https://github.com/bytedeco/javacpp-presets.git

javacpp-presets自动编译

cd ~/build/javacpp-presets/

./cppbuild.sh -platform linux-x86_64 clean

./cppbuild.sh -platform linux-x86_64 install

使用安装命令会下载各种要安装opencv的包

安装opencv

./cppbuild.sh -platform linux-x86_64 install opencv

文件问题

gzip: stdin: unexpected end of file
tar: Unexpected EOF in archive
tar: Unexpected EOF in archive
tar: Error is not recoverable: exiting now

经过确认是由于下载导致的文件错误,删除downloads内的opencv*的文件,重新下载即可

没有patch命令

../cppbuild.sh: line 21: patch: command not found

通过说明确认系统缺少patch命令

yum install patch -y

修复并开始编译

Cmake错误

CMake Error at cmake/OpenCVUtils.cmake:1047 (message):
  Failed to download v3.1.0/protobuf-cpp-3.1.0.tar.gz.  Status=7;"Couldn't
  connect to server"

又或者发生

-- Downloading v3.1.0/protobuf-cpp-3.1.0.tar.gz...
CMake Error at cmake/OpenCVUtils.cmake:1043 (file):
  file DOWNLOAD HASH mismatch

    for file: [/root/build/javacpp-presets/opencv/cppbuild/linux-x86_64/opencv_contrib-3.2.0/modules/dnn/.download/bd5e3eed635a8d32e2b99658633815ef/v3.1.0/protobuf-cpp-3.1.0.tar.gz]
      expected hash: [bd5e3eed635a8d32e2b99658633815ef]
        actual hash: [f1fab991ab408cc55e90ee25c7bdbc5e]

由于hash值错误,则需要手动下载protobuf-cpp,到这里进行下载protobuf releases 或者点击protobuf-cpp-3.1.0.tar.gz进行下载
下载后,存放到如下地址

cd /root/build/javacpp-presets/opencv/cppbuild

尝试使用wget,但是不停报超时错误,最终还是用chrome下载并使用filezilla传到虚拟机中,再次执行虽然报错,但是顺利进入编译环节。

编译顺利通过。

安装ffmpeg

请反复进行下载,由于有个包在googlesrouce.com上经常链接不上

./cppbuild.sh -platform linux-x86_64 install ffmpeg

经过基础库的安装顺利编译

问题: https://github.com/opencv/opencv/tree/master/3rdparty/ffmpeg

http://kronoskoders.logdown.com/posts/256664-installing-opencv-and-ffmpeg-on-windows

http://opencv.org/releases.html

© 著作权归作者所有

共有 人打赏支持
抢小孩糖吃

抢小孩糖吃

粉丝 67
博文 200
码字总数 223760
作品 0
东城
程序员
基于 JavaFX 开发的聊天客户端 - OIM

一、简介 OIM是一套即时通讯的聊天系统,在这里献给大家,一方面希望能够帮助对即时通讯有兴趣研究的朋友,希望我们能够共同进步,另一个就是希望能够帮助到需要即时通讯系统的朋友或者企业,...

烙灵 ⋅ 2017/06/09 ⋅ 23

javacv转流,jvm异常停止

下面是hserrpid.log的异常信息 # SIGSEGV (0xb) at pc=0x00007f399ca531ff, pid=4843, tid=0x00007f399dfa3700 JRE version: Java(TM) SE Runtime Environment (8.0161-b12) (build 1.8.0161......

菩提树下的猫 ⋅ 05/02 ⋅ 0

关于JavaCV安装使用过程网上普遍出现的一个问题的解决办法

网上搜索JavaCV,目前的资料还是比较少的。 Windows环境下安装过程大致是:先下载OpenCV,配置一下OpenCV的环境变量,这里配置的意思是能让java找得到。然后再下载JavaCV,把需要的jar包放进...

Glogo ⋅ 2013/04/17 ⋅ 1

Java视觉处理库--JavaCV

JavaCV 提供了在计算机视觉领域的封装库,包括:OpenCV、ARToolKitPlus、libdc1394 2.x 、PGR FlyCapture和FFmpeg。此外,该工具可以很容易地使用Java平台的功能。 JavaCV 还带有硬件加速的全...

匿名 ⋅ 2010/09/19 ⋅ 0

关于javacv的学习问题

请问如何系统的学习javacv,在网上找不到资料,如果有好的培训机构也行,恳请大家帮帮忙,实在迫切的需要它的知识。

余娴 ⋅ 2012/04/06 ⋅ 1

关于javacv的学习问题

请问如何系统的学习javacv,在网上找不到资料,如果有好的培训机构也行,恳请大家帮帮忙,实在迫切的需要它的知识。

余娴 ⋅ 2012/04/08 ⋅ 2

纯 JAVA 的对象跟踪技术

昨天晚上看了下优库的科技视频,那技术 NB 的让人都睡不着觉,尤其是什么所谓的体感技术等等,趁着今天没事干,就自己做了一个纯 JAVA 的对象跟踪软件。在网上查了下相关技术,有 OpenCV,J...

lixingbest ⋅ 2011/07/17 ⋅ 81

搭建基于http的本地yum源服务器

概述 yum相较于rpm,能够更好地解决安装软件时的依赖包问题,使用yum安装更简单更方便。搭建本地YUM源服务器,可以避免升级安装软件时占用公网带宽;有了本地YUM源服务器,可以解决无法连接I...

Zero零_度 ⋅ 2016/09/29 ⋅ 0

ffmpeg怎么能做到无缝切换呢

用ffmpeg怎么无缝切换视频源呢?我试过先把进程关闭然后重新推流,但是这样会导致中间卡顿20秒左右,也试过用javacv循环推流,但是帧数一直上不去,请问一下还有什么方法解决。

星卡农 ⋅ 2016/12/29 ⋅ 1

求助利用java如何实现摄像头拍照和比对照片

情况是这样的...我想利用JMF或者JavaCV调用摄像头连续三连拍拍保存下来...然后比对它们文件大小是不是一致...代码应该怎样写...

Yamitake ⋅ 2015/04/15 ⋅ 2

没有更多内容

加载失败,请刷新页面

加载更多

下一页

关于“幂等”操作

一个幂等(idempotent)操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同. 开发中, 我们经常考虑幂等操作的场景有“接口调用”、“MQ消费”、“自动任务”等 接口调用, 可能出现...

零二一七 ⋅ 6分钟前 ⋅ 0

Dubbo服务服务暴露之ProxyFactory Invoker

Dubbo服务暴露过程中有涉及到调用ProxyFactory 中方法获取Invoker对象的过程,现在我们来深究下源码,来看下这个过程是在做些什么,返回的Invoker 对象是什么,我们来看一下代码的切入点: ...

哲别0 ⋅ 20分钟前 ⋅ 0

GP两种连接方式性能测试

GP两种连接方式性能测试 Pivotal import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; public class GPQueryStrin......

仔仔1993 ⋅ 25分钟前 ⋅ 0

jsonrpc-4j代码解析

解析文件 AutoJsonRpcServiceImplExporter JsonServiceExporter AutoJsonRpcServiceImplExporter 路径:com.googlecode.jsonrpc4j.spring.AutoJsonRpcServiceImplExporter AutoJsonRpcServi......

郭恩洲_OSC博客 ⋅ 47分钟前 ⋅ 0

百度搜索

from selenium import webdriver import time brower=webdriver.Firefox() brower.get('http://www.baidu.com') input=brower.find_element_by_id('kw') input.send_keys('中南大学') time.s......

南桥北木 ⋅ 53分钟前 ⋅ 0

tomcat 日志记录器

1、日志记录器是记录消息的组件 日志记录器需要与某个servlet 容器相关联 2、Logger 接口 共定义了5种日志级别:FATAL、ERROR、WARNING、INFORMATION、DEBUGGER setVerbosity 设置级别 setC...

职业搬砖20年 ⋅ 55分钟前 ⋅ 0

Thrift RPC实战(三) Thrift序列化机制

1.Thrift基础架构 Thrift是一个客户端和服务端的架构体系,数据通过socket传输; 具有自己内部定义的传输协议规范(TProtocol)和传输数据标准(TTransports); 通过IDL脚本对传输数据的数据结构...

lemonLove ⋅ 55分钟前 ⋅ 0

网站建设就要像2018世界杯的俄罗斯队大杀四方[图]

今天心情不错,因为昨天晚上观看了世界杯比赛,尤其是对俄罗斯队的大杀四方感到十分霸气侧漏啊,因此我联想到了自己的博客网站,我的博客是去年年底上线的,一直想建设一个关于读书和读后感作...

原创小博客 ⋅ 今天 ⋅ 0

linux 信号机制

signal(SIGPIPE, SIG_IGN); TCP是全双工的信道, 可以看作两条单工信道, TCP连接两端的两个端点各负责一条. 当对端调用close时, 虽然本意是关闭整个两条信道, 但本端只是收到FIN包. 按照TCP协...

xxdd ⋅ 今天 ⋅ 0

my.cnf, my-small.cnf, my-medium.cnf, my-large.cnf

1. my-small.cnf # Example MySQL config file for small systems.## This is for a system with little memory (<= 64M) where MySQL is only used# from time to time and it's importa......

周云台 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部