automatically download SDKs

This commit is contained in:
2018-05-26 17:22:58 +02:00
parent 97bc4cf610
commit 5b8f96552f
3 changed files with 56 additions and 87 deletions

View File

@@ -70,13 +70,14 @@ def find_colored_ball(frame, hsv_lower, hsv_upper, min_radius):
return None return None
M = cv2.moments(c) M = cv2.moments(c)
center = (M["m10"] // M["m00"], M["m01"] // M["m00"]) center = (int(M["m10"] / M["m00"]),int(M["m01"] // M["m00"]))
return center, radius return center, int(radius)
def draw_ball_markers(frame, center, radius, history): def draw_ball_markers(frame, center, radius, history):
# draw the enclosing circle and ball's centroid on the frame, # draw the enclosing circle and ball's centroid on the frame,
cv2.circle(frame, center, radius, (0, 255, 255), 1) if center is not None and radius is not None:
cv2.circle(frame, center, radius, (255, 255, 0), 1)
cv2.circle(frame, center, 5, (0, 255, 0), -1) cv2.circle(frame, center, 5, (0, 255, 0), -1)
# loop over the set of tracked points # loop over the set of tracked points
@@ -87,7 +88,7 @@ def draw_ball_markers(frame, center, radius, history):
# otherwise, compute the thickness of the line and # otherwise, compute the thickness of the line and
# draw the connecting lines # draw the connecting lines
thickness = int(np.sqrt(64 / float(i + 1)) * 2.5) thickness = int(np.sqrt(64 / float(i + 1)) * 2.5)
cv2.line(frame, history[i - 1], history[i], (0, 0, 255), thickness) cv2.line(frame, history[i - 1], history[i], (0, 255, 0), thickness)
return frame return frame
@@ -112,11 +113,11 @@ def nao_demo():
center, radius = find_colored_ball( center, radius = find_colored_ball(
frame, red_lower, red_upper, min_radius frame, red_lower, red_upper, min_radius
) )
except TypeError: # No red ball found and function returned None
history.appendleft(None)
continue
history.appendleft(center) history.appendleft(center)
draw_ball_markers(frame, center, radius, history) draw_ball_markers(frame, center, radius, history)
except TypeError: # No red ball found and function returned None
history.appendleft(None)
draw_ball_markers(frame, None, None, history)
# show the frame to screen # show the frame to screen
cv2.imshow("Frame", frame) cv2.imshow("Frame", frame)
@@ -124,6 +125,7 @@ def nao_demo():
finally: finally:
vd_proxy.unsubscribe(cam_subscriber) vd_proxy.unsubscribe(cam_subscriber)
cv2.destroyAllWindows()
if __name__ == '__main__': if __name__ == '__main__':

View File

@@ -1,64 +1,35 @@
#!/bin/sh #!/bin/bash
echo "make naqui dir" # Exit immediately if something fails
mkdir ~/naoqi set -e
sleep 1 # opt is better that $HOME imho
naoqi_root='/opt/naoqi'
pynaoqi='pynaoqi-python2.7-2.1.4.13-linux32'
cppnaoqi='naoqi-sdk-2.1.4.13-linux32'
echo "copy the files into the naoqi folder" echo "Make NAOQi root dir"
#cp naoqi-sdk-2.1.4.13-linux32.tar.gz pynaoqi-python2.7-2.1.4.13-linux32.tar.gz ~/naoqi sudo mkdir ${naoqi_root}
cp pynaoqi-python2.7-2.1.4.13-linux32.tar.gz ~/naoqi cd ${naoqi_root}
cd ~/naoqi
sleep 1 echo "Get the SDKs"
sudo wget \
'https://drive.google.com/uc?export=download&id=1cZYzD_kK-Ty3n7cqYcX1M7XMOSAs899O' \
-O "pynaoqi.tar.gz"
echo "Extract them" sudo wget \
#tar xzf naoqi-sdk-2.1.4.13-linux32.tar.gz 'https://drive.google.com/uc?export=download&id=1qmT2GiRJ5icZkWScjKqCIErIevu8fLkF' \
tar xzf pynaoqi-python2.7-2.1.4.13-linux32.tar.gz -O "cppnaoqi.tar.gz"
sudo tar xzf cppnaoqi.tar.gz && sudo rm cppnaoqi.tar.gz
sudo tar xzf pynaoqi.tar.gz && sudo rm pynaoqi.tar.gz
echo "Add the NAOqi library path to PYTHONPATH" echo "Add the NAOqi library path to PYTHONPATH"
export PYTHONPATH=~/naoqi/pynaoqi-python2.7-2.1.4.13-linux32:$PYTHONPATH export PYTHONPATH="${naoqi_root}/${pynaoqi}:$PYTHONPATH"
echo "make this permanently available for every future terminal" echo "Make this permanently available for every future terminal"
echo 'export PYTHONPATH=~/naoqi/pynaoqi-python2.7-2.1.4.13-linux32:$PYTHONPATH' >> ~/.bashrc echo 'export PYTHONPATH="'"${naoqi_root}/${pynaoqi}"':$PYTHONPATH"' \
>>${HOME}/.profile
echo "install ros packages for nao" echo "Install ROS packages for Nao"
sudo apt-get install ros-indigo-nao-robot sudo apt-get install ros-indigo-nao-robot
'''
echo "Setting up sources.list"
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
sleep 1
echo "Set up your keys"
sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116
sleep 1
echo "Doing apt update"
sudo apt update
sleep 1
echo "installing ros"
#sudo apt-get install ros-indigo-desktop-full
sudo apt-get install ros-indigo-desktop
sleep 1
echo "Initialize rosdep"
sudo rosdep init
sleep 1
rosdep update
sleep 1
echo "Environment setup"
echo "source /opt/ros/indigo/setup.bash" >> ~/.bashrc
sleep 1
source ~/.bashrc
sleep 1
echo "getting rosinstall"
sudo apt install python-rosinstall
'''
exit 0

View File

@@ -1,35 +1,31 @@
#!/bin/sh #!/bin/bash
# Exit if something fails
set -e
echo "Setting up sources.list" echo "Setting up sources.list"
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list' sudo bash -c \
sleep 1 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" \
echo "Set up your keys" >/etc/apt/sources.list.d/ros-latest.list'
sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116
sleep 1
echo "Doing apt update" echo "Set up repository keys"
sudo apt update sudo apt-key adv \
sleep 1 --keyserver hkp://ha.pool.sks-keyservers.net:80 \
--recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116
echo "installing ros" echo "Update packages list"
#sudo apt-get install ros-indigo-desktop-full sudo apt-get update
echo "Install ROS"
sudo apt-get install ros-indigo-desktop sudo apt-get install ros-indigo-desktop
sleep 1
echo "Initialize rosdep" echo "Initialize rosdep"
sudo rosdep init sudo rosdep init
sleep 1
rosdep update rosdep update
sleep 1
echo "Environment setup" echo "Environment setup"
echo "source /opt/ros/indigo/setup.bash" >> ~/.bashrc echo "source /opt/ros/indigo/setup.bash" >>${HOME}/.bashrc
sleep 1 source ${HOME}/.bashrc
source ~/.bashrc
sleep 1 echo "Get rosinstall"
echo "getting rosinstall" sudo apt-get install python-rosinstall
sudo apt install python-rosinstall
exit 0