|
|
|
![]() |
|
|||||||
|
||||||||
![]() |
|
|
Thread Tools |
Rating:
|
Display Modes |
|
|
|
#1
|
||||
|
||||
|
Re: Dual Cameras - Dual Purposes
Invictus programmer, here!
Quote:
Quote:
Second - Our setup would have the usb from the kinect into the ITX, then the ITX would have an ethernet connection to the d-link with an IP like 10.35.93.7 or something. If I wanted to bypass the crio and just get image sent from the ITX on the dashboard, how would I go about doing that? I'm stumped.. :/ I had heard that you could only do 2 camera feeds in c++, but obviously that's not true. Quote:
To read the depth data during a match, we set the first 24 bits in a 32-bit rgb data according to the depth, and set the other 8 at ++colorBitmap; basically, the closer something is, the color changes and vice-versa. Any I am very contientious of how much bandwidth I'm using, I only want to get about 15fps at 50% compression on both displays, that way i'm still "in the green." Thank you guys so much for the quick replies! I had one other question. I had heard that the Kinect has an accelerometer in it and I was wondering if anyone has tried to use an accelerometer to compute where their robot is on the field. It may be a fun idea to collaborate on, if no one has done it yet! If there's enough interest, I'll create another thread for this idea, just let me know! |
|
#2
|
|||
|
|||
|
Re: Dual Cameras - Dual Purposes
The existing dashboard code reads directly from the camera IP on port 80. It requests an image stream as a CGI GET and processes the stream from the resulting session. If parameters change, it closes and reopens a new CGI session.
If the "camera" on the ITX could be made to look identical to the Axis, you could use the DB code as is. This would involve making an mjpeg on the ITX and serving it up on port 80 as if you were an Axis camera. While cool hackery, this is not really what I'd recommend, but it is a starting point for understanding one way to do this. What I'd recommend making a simple ask/response protocol over TCP. When asked for it, take the IR or depth image on the robot and writing it. When it is read on the DB, format it as needed and transfer it into an image of some sort. I have some Kinect code in LV that moves the data into efficiently into different formats if you find you need it. For display, you can use the LV picture control or the IMAQ display. You could even use the intensity graph if you would like it to do the color mapping as part of the blit. Using an accelerometer to determine distance is a very hard problem. To do this, you need to know orientation as well as accelerations and you need to have high quality sensors and/or knowledge of how the chassis can be affected. If you hook an analog sensor to the cRIO and use the DMA interface, you can pull back a high speed signal. This helps demonstrate how a tiny tilt of the sensor accumulates and results in an erroneous velocity as you integrate. You can also play with this if you have the right app on your phone. Greg McKaskle |
|
#3
|
||||
|
||||
|
Re: Dual Cameras - Dual Purposes
Quote:
Quote:
does the gyro provide speed and time? I have never used one so I have no idea. If it does, there may be no reason to call the kinect's accelerometer at all, just use the gyro to help plot the diagram maybe? |
|
#4
|
||||
|
||||
|
Re: Dual Cameras - Dual Purposes
Quote:
If you aren't knowledgeable with calculus, to get position out of acceleration, you have to integrate the graph of the values twice, but that won't be too hard considering how powerful of machines laptops. If you do this for x, y and z, you get orientation in relation to your starting position. A problem we have with our gyro is that it drifts, so it starts climbing at an exponential rate. i have a vivid memory of our gyro climbing at 10 rps (revolutions per SECOND) while testing our motors in the pit to make sure everything was running smoothly. While the gyro climbing isn't the worst thing in the world, it is when you use the gyro for machanuum (spelling?) wheels. I haven't heard of many teams having this problem, but we have it, so it affects what we do. The gyro we have just gives pitch roll and yaw based off our initial orientation, which helps us for machanuum driving but nothing else. I really like the idea of using the accerlometer in the kinect, it's already there, so why not use it, right? |
|
#5
|
||||
|
||||
|
Re: Dual Cameras - Dual Purposes
Quote:
Quote:
Also, i shot you an email because it wouldn't let me PM you, faust. I'll start a new thread pertaining to the position idea here in a few so we stay on the camera idea in this thread! Last edited by Invictus3593 : 27-09-2013 at 12:19. |
|
#6
|
|||
|
|||
|
Re: Dual Cameras - Dual Purposes
See this other post for some code. The code isn't as neat as I would like, but If I remember right, I had it feeding the image to the driverstation. Short version, I compressed the image to JPG, sent it over TCP to the driver station, and decoded it for display on the screen.
http://www.chiefdelphi.com/forums/sh....php?p=1205226 |
|
#7
|
||||
|
||||
|
Re: Dual Cameras - Dual Purposes
Quote:
|
|
#8
|
||||
|
||||
|
Re: Dual Cameras - Dual Purposes
I got the C# program written to get the Kinect depth picture, now i can't figure out how to send the data over tcp to the dashboard, any ideas?
|
|
#9
|
||||
|
||||
|
Re: Dual Cameras - Dual Purposes
Quote:
You're right about the kinect having an accelerometer, but I honest have no idea how to call for it's reading. I emailed my mentor that helps me with vision programming and he sent me this link: http://www.youtube.com/watch?v=c9bWpE4tm-o. it doesn't give any info in the description, but the fact that is has been done is encouraging I don't know much about the kinect sdk, so I can't help you there. Instead of using the accelerometer , we use a gyro for orientation. What we have been working on is using our vision solution instead of a gyro, or as a check for it at the very least. To do this for all 6 desired values, x y and z displacement, and pitch roll yaw, I'd suggest using pose. I digress, however. I would love to work on a project like this with anyone interested (that is, using the accelerometer readings in the kinect) |
![]() |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|