반응형
opencv 먼저 설치하고
$ pwd
/home/ubuntu
$ mkdir openCV && cd openCV
$ wget -O opencv.zip https://github.com/opencv/opencv/archive/4.5.2.zip
$ wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.5.2.zip
$ unzip opencv.zip
$ unzip opencv_contrib.zip
$ cd opencv-4.5.2
$ mkdir build && cd build
$ pwd
/home/ubuntu/openCV/opencv-4.5.2/build
$ cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=OFF -D WITH_IPP=OFF -D WITH_1394=OFF -D BUILD_WITH_DEBUG_INFO=OFF -D BUILD_DOCS=OFF -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=OFF -D BUILD_PACKAGE=OFF -D BUILD_TESTS=OFF -D BUILD_PERF_TESTS=OFF -D WITH_QT=OFF -D WITH_GTK=ON -D WITH_OPENGL=ON -D BUILD_opencv_python3=ON -D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-4.5.2/modules -D WITH_V4L=ON -D WITH_FFMPEG=ON -D WITH_XINE=ON -D OPENCV_ENABLE_NONFREE=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D OPENCV_SKIP_PYTHON_LOADER=ON -D OPENCV_GENERATE_PKGCONFIG=ON ../ -DCMAKE_CXX_FLAGS="-std=c++11"
$ time make -j4
$ sudo make install
$ sudo ldconfig
$ pkg-config --modversion opencv4 //설치 확인
4.5.2
ubuntu08@ubuntu08-VirtualBox:~/openCV/openCvCamTest/firstOpencv$ cat first.cpp
#include <opencv2/highgui.hpp>
using namespace::cv;
int main(void)
{
Mat image(300, 400, CV_8UC1, Scalar(200));
imshow("영상보기", image);
waitKey(0);
return 0;
}
ubuntu08@ubuntu08-VirtualBox:~/openCV/openCvCamTest/firstOpencv$ cat Makefile
CC:=g++
TARGET=first
OBJECT=$(TARGET).o
CFLAGS = `pkg-config opencv4 --cflags --libs`
LIBS=`pkg-config opencv4 --cflags --libs`
all : $(TARGET)
$(TARGET):$(OBJECT)
$(CC) -o $@ $(OBJECT) $(LIBS)
%.o:%.cpp
$(CC) -c -o $@ $< $(CFLAGS)
clean:
rm -f *.o $(TARGET)
ubuntu08@ubuntu08-VirtualBox:~/openCV/openCvCamTest/firstOpencv$ make
g++ -c -o first.o first.cpp `pkg-config opencv4 --cflags --libs`
g++ -o first first.o `pkg-config opencv4 --cflags --libs`
ubuntu08@ubuntu08-VirtualBox:~/openCV/openCvCamTest/firstOpencv$ ls
build.sh first first.cpp first.o Makefile
쉘 스크립트를 이렇게 만들어주면 cpp 이름만 쳐주면 그 이름대로 object file과 실행파일을 만들어줌.
ubuntu08@ubuntu08-VirtualBox:~/openCV/openCvCamTest/firstOpencv$ cat build.sh
g++ -o $1 $1.cpp $(pkg-config opencv4 --libs --cflags)
ubuntu08@ubuntu08-VirtualBox:~/openCV/openCvCamTest/firstOpencv$ ./build.sh first
ubuntu08@ubuntu08-VirtualBox:~/openCV/openCvCamTest/firstOpencv$ ls
build.sh first first.cpp first.o Makefile
아니면 makefile을 만들어서 해줘도 됨.
ubuntu08@ubuntu08-VirtualBox:~/openCV/openCvCamTest/firstOpencv$ cat Makefile
CC:=g++
TARGET=first
OBJECT=$(TARGET).o
CFLAGS = `pkg-config opencv4 --cflags --libs`
LIBS=`pkg-config opencv4 --cflags --libs`
all : $(TARGET)
$(TARGET):$(OBJECT)
$(CC) -o $@ $(OBJECT) $(LIBS)
%.o:%.cpp
$(CC) -c -o $@ $< $(CFLAGS)
clean:
rm -f *.o $(TARGET)
ubuntu08@ubuntu08-VirtualBox:~/openCV/openCvCamTest/firstOpencv$ make
g++ -c -o first.o first.cpp `pkg-config opencv4 --cflags --libs`
g++ -o first first.o `pkg-config opencv4 --cflags --libs`
ubuntu08@ubuntu08-VirtualBox:~/openCV/openCvCamTest/firstOpencv$ ls
build.sh first first.cpp first.o Makefile
실행파일 실행 시켜보고 잘되면 openCV 초기 설정은 된거임.
그럼 qt에서 camera 띄워보겠음.
서버는 미리 돌려줘야됩니다~
주기적으로 센서값을 보내주고 있음.
이거 Qt creator에서 프로젝트로 열고 실행시켜보면
tab2에서 서버시작
tab6에서 카메라시작
tab7에서 영상시작하면 영상이 나옴.
반응형
'Open CV' 카테고리의 다른 글
[OPENCV-C++ ] open cv morphology_extension을 활용한 이미지 노이즈 제거 (0) | 2023.11.26 |
---|---|
[OPENCV-C++ ] open cv 라이브러리 활용 erode, dilate (0) | 2023.11.26 |
[OPENCV-C++ ] 형태학 기반 영상처리 Dilation 팽창 (0) | 2023.11.26 |
[OPENCV-C++ ] 형태학 기반 영상처리 Erosion 침식 (0) | 2023.11.26 |
[OPENCV-C++ ] BGR→HSV→fndcontours→text로 사진에 데이터 표현 (1) | 2023.11.26 |