admin管理员组

文章数量:1566995

一、windows连接

因为本人手残,不小心更改了网络摄像头的ipv4地址,导致摄像头连接不上了
解决办法:
1、打开海康威视官网下载的软件iVMS,在软件左侧找到 设备管理–>设备–>在线设备,可以看到更改ip之后的网络摄像头的信息出现了,

在其中找到最左侧的IPv4信息,就可以看到自己更改之后的ip地址。点击最右侧的操作下边的地球形状的按钮,可以看到修改网络参数。

2、知道这个ip之后,就可以去windows中设置ip了。
右键桌面右下角的wifi图标,选择 打开网络和Internet设置,找到高级网络配置下放的更改适配器选项,找到以太网选项,右键选择属性,在网络这一栏里选择Internet协议版本4(TCP/IPV4),选中之后点击属性,选择使用下面的IP地址,填写ip地址子网掩码即可。


需要注意的是,ip地址的前三位需要跟网络摄像机的ip地址相同,最后一位不能相同,简单举例:网络摄像头的ip地址是123.45.66.7,那么windows上设置的ip地址就应该是123.45.66.x,这个x不能是7,可以是别的,比如0、1、2、3等非7数字。

感谢这位大佬的文章解惑海康威视网络摄像头网线直连电脑

填写完成之后,点击确定 确定即可(两次确定)。

3、这时返回到iVMS中,点击刷新就可以看到网络状态显示在线

二、在windows下使用opencv读取海康威视网络摄像头

直接贴代码吧

#include <opencv2/opencv.hpp>
#include <opencv2/core/utils/logger.hpp>

int main()
{
    cv::utils::logging::setLogLevel(cv::utils::logging::LOG_LEVEL_ERROR);//只输出错误日志
    const int imageWidth = 1280; // 摄像头的分辨率
    const int imageHeight = 720;
    // url格式为:“rtsp ://用户名:密码@网络IP:RTSP端口/Streaming/Channels/1”
    std::string  url = "rtsp://用户名:密码@网络IP:RTSP端口/Streaming/Channels/1";  //换成自己的
    cv::VideoCapture cap(url);
    cv::Mat cvImg;
    // cap的这两条set据说可以减缓显示的延迟,我试着是有点效果的
    cap.set(cv::CAP_PROP_BUFFERSIZE, 3);
    cap.set(cv::CAP_PROP_FOURCC, cv::VideoWriter::fourcc('M', 'J', 'P', 'G'));
    cv::namedWindow("cap", cv::WINDOW_NORMAL);
    bool read_ok = false;
    bool cap_open = cap.isOpened();
    std::cout << "cap_open: " << cap_open << std::endl;
    while (cap.isOpened())
    {
        try
        {
            read_ok = cap.read(cvImg);
            if (read_ok)
            {
                if (cvImg.data)
                {
                    cv::imshow("cap", cvImg);
                }
                int key = cv::waitKey(1);
                if (key == 27)
                    break;
            }
            else
            {
                std::cout << "read failure." << std::endl;
                break;
            }
        }
        catch (std::exception& e)
        {
            std::cerr << e.what() << std::endl;
        }
    }
    cvImg.release();
    cap.release();  
    cv::destroyAllWindows();
    return 0;
}

三、orin nx使用海康威视网络摄像头

1、将网络摄像头的网口插在orin nx上的Gige1这个接口上。
2、在orin nx中点击左上角的关机键,选择Settings,在Network这一栏中找到Wired,点击齿轮模样的按钮,设置IPv4,其中IPv4 Method选择Manual,手动输入ip中的address、netmask(我跟windows上设置的一样),gateway这一栏我没有输入。
3、在visual studio code中打开二里的代码,cmake make之后运行可执行文件即可打开网络摄像头。

注意:我以前给orin nx联网都是通过usb联网的,所以用网络摄像头的时候需要把这个wifi给拔掉,这样网络摄像头就可以用了。
ifconfig指令查看ip地址
没有拔掉网卡之前直接运行程序的话,会提示错误no route to host
我搜了一下,没有合适的解决办法 尝试了两种方法:
1、etc/network/interfaces 更改相应配置,但是搜了一下说ubuntu20这样设置没啥用
2、etc里边的netplan之类的,我直接没找到。。。

四 之后有什么新的东西会继续更新的

本文标签: 解决办法摄像头状况新人视网