Revision 432
extracted vision code into a library
trunk/code/projects/colonet/vision/vision.sh | ||
---|---|---|
3 | 3 |
do |
4 | 4 |
# only use wget when not on roboclub9 |
5 | 5 |
# wget -q http://roboclub9.frc.ri.cmu.edu/colonet.jpg -O colonet.jpg |
6 |
sudo ./vision /var/www/colonet.jpg > /var/www/colonet/locations.txt |
|
6 |
sudo ./vision_driver /var/www/colonet.jpg > /var/www/colonet/locations.txt
|
|
7 | 7 |
sleep .1s |
8 | 8 |
done |
trunk/code/projects/colonet/vision/vision_driver.c | ||
---|---|---|
3 | 3 |
*/ |
4 | 4 |
|
5 | 5 |
#include <vision.h> |
6 |
#include <stdio.h> |
|
6 | 7 |
|
7 | 8 |
int main(int argc, char** argv) { |
8 | 9 |
const char* filename = (argc == 2) ? argv[1] : (char*)"colonet.jpg"; |
9 | 10 |
|
10 |
if (init_vision(filename) != 0) {
|
|
11 |
if (vision_init(filename) != 0) {
|
|
11 | 12 |
fprintf(stderr, "init_vision failed.\n"); |
12 | 13 |
return -1; |
13 | 14 |
} |
trunk/code/projects/colonet/vision/Makefile | ||
---|---|---|
1 | 1 |
# Makefile for vision. |
2 | 2 |
|
3 |
default: vision fitellipse |
|
3 |
default: vision_driver fitellipse
|
|
4 | 4 |
|
5 |
driver: vision_driver.c |
|
5 |
vision_driver: vision_driver.c vision.c |
|
6 |
gcc -ggdb `pkg-config opencv --cflags --libs` -I . vision_driver.c vision.c -o vision_driver |
|
6 | 7 |
|
7 |
vision: vision.c |
|
8 |
mkdir -p bin |
|
9 |
gcc -ggdb `pkg-config opencv --cflags --libs` -I . vision.c -o vision |
|
10 |
|
|
11 | 8 |
fitellipse: fitellipse.c |
12 | 9 |
gcc -ggdb `pkg-config opencv --cflags --libs` fitellipse.c -o fitellipse |
13 | 10 |
|
trunk/code/projects/colonet/vision/vision.h | ||
---|---|---|
1 |
/** |
|
2 |
* Rich Hong's colony vision library. |
|
3 |
*/ |
|
4 |
|
|
5 |
#ifndef COLONY_VISION_H |
|
6 |
#define COLONY_VISION_H |
|
7 |
|
|
8 |
typedef struct { |
|
9 |
int x; |
|
10 |
int y; |
|
11 |
} VisionPosition; |
|
12 |
|
|
13 |
int vision_init(const char* filename); |
|
14 |
int vision_get_robot_positions(VisionPosition** positions); |
|
15 |
|
|
16 |
#endif |
Also available in: Unified diff