Skip to content

Instantly share code, notes, and snippets.

@robobe
robobe / imshow
Created December 9, 2017 16:49
opencv matplotlib image show
import cv2
import numpy as np
from matplotlib import pyplot as plt
image = cv2.imread("berry.jpg")
image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
plt.axis("off")
plt.imshow(image, interpolation="nearest")
plt.show()
@robobe
robobe / CMakeLists.txt
Created May 31, 2019 11:40
Gazebo cmake file , Camera sensor with opencv
cmake_minimum_required(VERSION 2.8 FATAL_ERROR)
project(cv_plugin)
find_package(gazebo REQUIRED)
include_directories(${GAZEBO_INCLUDE_DIRS})
link_directories(${GAZEBO_LIBRARY_DIRS})
list(APPEND CMAKE_CXX_FLAGS "${GAZEBO_CXX_FLAGS}")
@robobe
robobe / cv_tcp_server.py
Created June 3, 2019 05:16
OpenCV simple tcp server
import socket
import cv2
import numpy as np
import struct
HOST = '127.0.0.1'
PORT = 5005
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((HOST, PORT))
@robobe
robobe / cv_tcp_sender.py
Created June 3, 2019 05:17
simple opoencv tcp socket client read camera and send image as jpeg
import socket
import time
import struct
import cv2
capture = cv2.VideoCapture(0)
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.connect(('127.0.0.1', 5005))
while True:
@robobe
robobe / logging.json
Created July 31, 2019 17:46
Python logging json config file #python #config
{
"logging": {
"version": 1,
"disable_existing_loggers": true,
"formatters": {
"single-line": {
"class": "logging.Formatter",
"style": "{",
"datefmt": "%I:%M:%S",
"format": "{levelname:8s}; {asctime:s}; {name:<15s} {lineno:4d}; {message:s}"
@robobe
robobe / udp_sender.py
Created August 23, 2019 07:19
send capture image over udp socket
import cv2
import socket
import struct
from datetime import datetime
cap = cv2.VideoCapture(1)
fps = cap.get(cv2.CAP_PROP_FPS)
font = cv2.FONT_HERSHEY_SIMPLEX
JPEG_QUALITY = 70
encode_param = [int(cv2.IMWRITE_JPEG_QUALITY), JPEG_QUALITY]
@robobe
robobe / udp_recv.py
Created August 23, 2019 07:20
recieve image over udp socket, decode from jpeg work with sample from udp_sender gist
import socket
import sys
import struct
import cv2
import numpy as np
BUFFER_SIZE = 1024
ADDR = ("127.0.0.1", 5252)
HEADER_START = b"START"
@robobe
robobe / cv2gst_pipe
Created December 31, 2019 20:06
send opencv frame over gstreamer pipe using python # python #gst
#!/usr/bin/env python3
import sys
import os
import cv2
import gi
import signal
import threading
gi.require_version('Gst', '1.0')
from gi.repository import Gst, GObject
@robobe
robobe / gst_clock.py
Created March 29, 2020 10:02
gstreamer clock #gst
import gi
gi.require_version('Gst', '1.0')
import traceback
import sys
from gi.repository import Gst, GObject
import multiprocessing
class base():
def __init__(self, name):
self.pipeline = None
@robobe
robobe / gen_image.py
Created July 2, 2021 14:23
Generated image from numpy array
import cv2
import numpy as np
import time
from timeit import default_timer as timer
HEIGHT=480
WIDTH=640
FONT=cv2.FONT_HERSHEY_SIMPLEX
bottomLeftCornerOfText = (100,100)