Categories
Behaviour bio

Ethology

Ethology lecture, Sapolsky: https://www.youtube.com/watch?v=ISVaoLlW104

Possibly very interesting… Neuroethology: https://en.wikipedia.org/wiki/Neuroethology

Also, neurorobotics:

https://github.com/HBPNeurorobotics/BlenderRobotDesigner

Categories
Behaviour

Robot Behaviour

https://www.cpp.edu/~ftang/courses/CS521/notes/robot%20behavior.pdf

Categories
blender

Phobos /Blender

This is probably the best way to create the URDF file required for further physics modelling with Bullet/Gazebo.

Here’s the Bremen University link: https://robotik.dfki-bremen.de/en/research/softwaretools/phobos.html

https://github.com/dfki-ric/phobos/wiki/Installation

“As of release 0.8 of Phobos, we only support Blender 2.79. This means it will not function properly any more for older Blender versions and might not function with later versions; Blender 2.8 is expected to include major changes that will not be compatible with Phobos.”

https://download.blender.org/release/Blender2.79/

download

tar xvf blender-2.79b-linux-glibc219-x86_64.tar.gz

And install phobos…

git clone https://github.com/dfki-ric/phobos.git

python3 setup.py

https://github.com/dfki-ric/phobos/wiki/First-Steps

And then begin… https://github.com/dfki-ric/phobos/wiki/Modeling-Walkthrough

Essentially, what you want to build is a hierarchy of objects, parented to one another in such a way that pairs of objects can be connected with joints to represent the robot’s kinematics later on. For this purpose, it is easiest to build the robot in its rest pose, i.e. the way it will look like when all its joints are at their origin position.

So we need to plan the robot now.

Categories
OpenCV Vision

Installing OpenCV on computer

OpenCV will be needed, for the robot to make sense of the camera input. We’ll have the camera on a raspberry pi of some sort.

pip install opencv-contrib-python

Someone made a useful website on OpenCV here https://www.pyimagesearch.com/

root@chrx:/opt/imagezmq/tests# python3
Python 3.6.9 (default, Nov  7 2019, 10:44:02) 
[GCC 8.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
>>> cv2.__version
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: module 'cv2.cv2' has no attribute '__version'
>>> cv2.__version__
'4.2.0'

Just gotta make sure it uses python3, not python2.

We’ll run it on the raspberry pi (https://www.pyimagesearch.com/2018/09/19/pip-install-opencv/) eventually, but for now, just testing core features on GalliumOS. It’s also required by imagezmq (https://github.com/jeffbass/imagezmq)

The robot has to use its sensors to find chickens, eggs, and decide whether to walk or turn. Stimuli to trigger actions.

pip install zmq

Might also need ‘pip install imutils’

Copying imagezmq.py to the tests folder cause I don’t know shit about python and how to import it from the other folder. So here’s the server:

python3 test_1_receive_images.py

import sys
import cv2
import imagezmq

image_hub = imagezmq.ImageHub()
while True:  # press Ctrl-C to stop image display program
    image_name, image = image_hub.recv_image()
    cv2.imshow(image_name, image)
    cv2.waitKey(1)  # wait until a key is pressed
    image_hub.send_reply(b'OK')

And the client program:

python3 test_1_send_images.py


import sys
import time
import numpy as np
import cv2
import imagezmq

# Create 2 different test images to send
# A green square on a black background
# A red square on a black background

sender = imagezmq.ImageSender()
i = 0
image_window_name = 'From Sender'
while True:  # press Ctrl-C to stop image sending program
    # Increment a counter and print it's value to console
    i = i + 1
    print('Sending ' + str(i))

    # Create a simple image
    image = np.zeros((400, 400, 3), dtype='uint8')
    green = (0, 255, 0)
    cv2.rectangle(image, (50, 50), (300, 300), green, 5)

    # Add counter value to the image and send it to the queue
    cv2.putText(image, str(i), (100, 150), cv2.FONT_HERSHEY_SIMPLEX, 2, (0, 255, 255), 4)
    sender.send_image(image_window_name, image)
    time.sleep(1)

Cool it sent pics to my screen. Heh “Hershey Simplex” sounds more like a virus than a font.

Categories
arxiv

Machine Learning reddit arxivs

1-1011-2021-3031-4041-5051-6061-7071-8081-90
Week 1Week 11Week 21Week 31Week 41Week 51Week 61Week 71Week 81
Week 2Week 12Week 22Week 32Week 42Week 52Week 62Week 72Week 82
Week 3Week 13Week 23Week 33Week 43Week 53Week 63Week 73
Week 4Week 14Week 24Week 34Week 44Week 54Week 64Week 74
Week 5Week 15Week 25Week 35Week 45Week 55Week 65Week 75
Week 6Week 16Week 26Week 36Week 46Week 56Week 66Week 76
Week 7Week 17Week 27Week 37Week 47Week 57Week 67Week 77
Week 8Week 18Week 28Week 38Week 48Week 58Week 68Week 78
Week 9Week 19Week 29Week 39Week 49Week 59Week 69Week 79
Week 10Week 20Week 30Week 40Week 50Week 60Week 70Week 80
Categories
Linux

GalliumOS

An OS for Chromebooks. In hindsight, better than ChromeOS.

chrx and dual boot https://wiki.galliumos.org/Installing

Adjustments needed to be made for dev env setup.

apt-get install python3-distutils

Ok Docker https://docs.docker.com/install/linux/docker-ce/ubuntu/

Ok and did it solve the docker problem (Ubuntu on crouton)???

sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common

sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"

sudo apt-get install docker-ce docker-ce-cli containerd.io

pip install docker-compose
chmod +x /usr/local/bin/docker-compose

git clone https://github.com/javadan/buckets.git


docker-compose up

yes it got further. i gotta fix the buckets code but yes, GalliumOS is great.

Categories
Locomotion

Muscles in Bipeds

Flexible Muscle-Based Locomotion for Bipedal Creatures

Paper: https://www.goatstream.com/research/papers/SA2013/SA2013.pdf

Categories
Linux

Setting up dev env

sudo apt-get update && sudo apt-get upgrade
sudo -i
apt-get install python3 git curl
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python3 get-pip.py

When trying this again in 2021, from scratch, I needed this for python3:

sudo apt-get install python3-distutils
sudo apt-get install python3-dev
pip install virtualenv
apt install default-jdk         <<    apt vs apt-get
pip install docker-compose
chmod +x /usr/local/bin/docker-compose

Note that the advised method didn't work:
sudo curl -L https://github.com/docker/compose/releases/download/1.21.2/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose 

At this point, docker craps out, complaining bout “/sys/fs/cgroup/cpuset/docker/cpus ” (See other post)

Categories
Linux

Ubuntu on crouton

Installed Ubuntu on the chroot ‘partition’, using crouton, on ChromeOS. But it turns out, docker doesn’t want to work. It’s loosely related to these issues:

https://github.com/docker/for-linux/issues/689

https://github.com/moby/moby/issues/33594

It’s not necessarily a deal-breaker, but it is super lame.

There are other options for Linux, so will try them. https://chrx.org/ and GalliumOS in the next attempt. Dual-boot.

Another interesting attempt is here, where a guy recompiles the ChromeOS kernel with the config variables that docker is not finding. https://gist.github.com/christianbundy/ba62890a7c2f8128bcbb

Categories
Linux

Ubuntu install

apt-get update && sudo apt-get upgrade

apt-get install python3

apt-get install git

apt-get install curl

curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py

python3 get-pip.py

pip install virtualenv

apt-get install default-jdk

TODO: open-ssh, download code, get started