Re: [Elphel-support] 答复: 答复: 答复: 答复: 答复: 答复: 答复: 答复: 答复: 答复: Re: Quote for 1 NC393-Stereo camera

2018-05-04 Thread Andrey Filippov
Oleg, Winston,

JPEG is 4:0:0 YCbCr, JP4 is just raw Bayer data, there is no color conversion.

Andrey

 On Fri, 04 May 2018 15:00:07 -0700 Oleg 
support-list@support.elphel.com wrote  

 
What is different of the format yuv and yours jp4? How can I get yuv-data? If I 
want to get high quality image not to be compressed, whether I choose the yuv 
data or jp4 data? Thank you! 
See https://wiki.elphel.com/wiki/JP4



JP4 is 4:0:0 YCbCr encoded. After reordering back blocks of pixels you get the 
pixel values of the Bayer pattern. Try this python script for deblocking. After 
deblocking you can:
* unapply gammas to get to linear scale
* unapply gains to work with unamplified data


I want to get camera image raw data(.jp4) buffer, but I cannot get it through 
gstreamer. I should do a demo app with C/C++, how can I get the camera image 
raw data, and keep the two camera sync?





The sensors are always in sync (if exposure time is less than 1/fps).


Your problem is to download matching jp4 images from different ports buffers, 
correct?


If yes then here's what you can do in your program - example for port 0 and 
port 1:


I. Without stopping compressor/sensors


step 1 Read current image pointers in port 0 and port 1 buffers:


port0: http://192.168.0.9:2323/pointers 
port1: http://192.168.0.9:2324/pointers 

(responses are xml, extract this.../this value)

port0: 
... this55801952/this...port1:
... thisxxx1/this... 
And so:
$THISPOINTER0 = 55801952
$THISPOINTER1 = xxx1




step 2 Read meta data



http://192.168.0.9:2323/$THISPOINTER0/meta
http://192.168.0.9:2324/$THISPOINTER1/meta

Responses are xml - extract and compare timestamps (from 
timestamp.../timestamp)


step 2a If timestamps don't match and 'port 0 timestamp'  'port 1 
timestamp' - you will need check one frame back for port 1.


Note: there a short help how to navigate the buffers: http://192.168.0.9:2323 


port1: http://192.168.0.9:2324/$THISPOINTER1/prev/pointers
... thisxxx2/this...

$NEWPOINTER1 = xxx2



next read timestamp from http://192.168.0.9:2324/$NEWPOINTER1/meta and compare. 
If 'port 0 timestamp' still  'port 1 timestamp' then
$THISPOINTER1 = $NEWPOINTER1, repeat this step



step 3 When timestamps are finally matching, download image(s):

http://192.168.0.9:2323/$THISPOINTER0/img

http://192.168.0.9:2324/$THISPOINTER1/img



Here, we are assuming all requests are performed quickly enough


II. With stopping triggering



step 1 
Set TRIG_PERIOD=0


... next steps are the same as in I. but most likely the latest timestamps will 
match and you won't have to navigate through buffers:
meta: http://192.168.0.9:2323/meta
meta: http://192.168.0.9:2324/meta
image: http://192.168.0.9:2323/img

image: http://192.168.0.9:2324/img



step X
Restore TRIG_PERIOD



I could probably make a script to do those things and put on the camera.


https://wiki.elphel.com/wiki/Using_gstreamer please look at the red rectangle 
area, what is this mean? This is outdated information. It should work as 
described here.
So, after you start the streamers: 
elphel393~# /usr/bin/strTo watch a stream with gstreamer from PC, example:
port0: gst-launch-1.0 rtspsrc location=rtsp://192.168.0.9:554 ! rtpjpegdepay ! 
jpegdec ! videoscale ! video/x-raw,width=640,height=480 ! xvimagesink sync=false
port1: gst-launch-1.0 rtspsrc location=rtsp://192.168.0.9:554 ! rtpjpegdepay ! 
jpegdec ! videoscale ! video/x-raw,width=640,height=480 ! xvimagesink sync=false


 And this web paper introduce an stream of yuv-format(“gst-launch -v rtspsrc 
location=rtsp://192.168.0.9:554 ! queue ! rtpjpegdepay ! queue ! jpegdec ! 
queue ! \videorate ! capsfilter caps="video/x-raw-yuv, format=(fourcc)I420, 
width=(int)1024, height=(int)768, framerate (fraction)25/1" ! \ queue ! avimux 
! filesink location=/tmp/test.avi”), but in you setting web of image, I cannot 
find the value point to the yuv 


Value point? This is an old example - I cannot make it work.



Best regards,
Oleg Dzhimiev
Electronics Engineer
phone: +1 801 783  x124
Elphel, Inc.
 

 ___ 
Support-list mailing list 
Support-list@support.elphel.com 
http://support.elphel.com/mailman/listinfo/support-list_support.elphel.com 





___
Support-list mailing list
Support-list@support.elphel.com
http://support.elphel.com/mailman/listinfo/support-list_support.elphel.com


Re: [Elphel-support] 答复: 答复: 答复: 答复: 答复: 答复: 答复: 答复: 答复: 答复: Re: Quote for 1 NC393-Stereo camera

2018-05-04 Thread Oleg
> What is different of the format yuv and yours jp4? How can I get yuv-data?
> If I want to get high quality image not to be compressed, whether I choose
> the yuv data or jp4 data? Thank you!


See https://wiki.elphel.com/wiki/JP4

JP4 is 4:0:0 YCbCr encoded. After reordering back blocks of pixels you get
the pixel values of the Bayer pattern. Try this python script
 for deblocking. After deblocking
you can:
* unapply gammas to get to linear scale
* unapply gains to work with unamplified data

I want to get camera image raw data(.jp4) buffer, but I cannot get it
> through gstreamer. I should do a demo app with C/C++, how can I get the
> camera image raw data, and keep the two camera sync?
>
>
The sensors are always in sync (if exposure time is less than 1/fps).

Your problem is to download matching jp4 images from different ports
buffers, correct?

If yes then here's what you can do in your program - example for port 0 and
port 1:

*I.* Without stopping compressor/sensors

*step 1* Read current image pointers in port 0 and port 1 buffers:

port0: http://192.168.0.9:2323/pointers
port1: http://192.168.0.9:2324/pointers

(responses are xml, extract ... value)
port0:

> ...

55801952

...

port1:

> ...

xxx1

...


And so:
$THISPOINTER0 = 55801952
$THISPOINTER1 = xxx1

*step 2 *Read meta data

http://192.168.0.9:2323/$THISPOINTER0/meta
http://192.168.0.9:2324/$THISPOINTER1/meta

Responses are xml - extract and compare timestamps (from ...)

*step 2a *If timestamps don't match and 'port 0 timestamp' < 'port 1
timestamp' - you will need check one frame back for port 1.

Note: there a short help how to navigate the buffers:
http://192.168.0.9:2323

port1: http://192.168.0.9:2324/$THISPOINTER1/prev/pointers

> ...

xxx2

...

$NEWPOINTER1 = xxx2

next read timestamp from http://192.168.0.9:2324/$NEWPOINTER1/meta and
compare. If 'port 0 timestamp' still < 'port 1 timestamp' then
$THISPOINTER1 = $NEWPOINTER1, repeat this step

*step 3* When timestamps are finally matching, download image(s):
http://192.168.0.9:2323/$THISPOINTER0/img
http://192.168.0.9:2324/$THISPOINTER1/img

Here, we are assuming all requests are performed quickly enough

*II.* With stopping triggering

*step 1 *
Set TRIG_PERIOD=0

... next steps are the same as in I. but most likely the latest timestamps
will match and you won't have to navigate through buffers:
meta: http://192.168.0.9:2323/meta
meta: http://192.168.0.9:2324/meta
image: http://192.168.0.9:2323/img
image: http://192.168.0.9:2324/img

*step X*
Restore TRIG_PERIOD

I could probably make a script to do those things and put on the camera.

https://wiki.elphel.com/wiki/Using_gstreamer please look at the red
> rectangle area, what is this mean?

This is outdated information. It should work as described here
.
So, after you start the streamers:

> elphel393~# /usr/bin/str

To watch a stream with gstreamer from PC, example:
port0: gst-launch-1.0 rtspsrc location=rtsp://192.168.0.9:554 !
rtpjpegdepay ! jpegdec ! videoscale ! video/x-raw,width=640,height=480 !
xvimagesink sync=false
port1: gst-launch-1.0 rtspsrc location=rtsp://192.168.0.9:554 !
rtpjpegdepay ! jpegdec ! videoscale ! video/x-raw,width=640,height=480 !
xvimagesink sync=false

 And this web paper introduce an stream of yuv-format(“gst-launch -v
> rtspsrc location=rtsp://192.168.0.9:554 ! queue ! rtpjpegdepay ! queue !
> jpegdec ! queue ! \

videorate ! capsfilter caps="video/x-raw-yuv, format=(fourcc)I420,
> width=(int)1024, height=(int)768, framerate (fraction)25/1" ! \

queue ! avimux ! filesink location=/tmp/test.avi”), but in you setting web
> of image, I cannot find the value point to the yuv


Value point? This is an old example - I cannot make it work.

Best regards,
Oleg Dzhimiev
Electronics Engineer
phone: +1 801 783  x124
Elphel, Inc.
___
Support-list mailing list
Support-list@support.elphel.com
http://support.elphel.com/mailman/listinfo/support-list_support.elphel.com


Re: [Elphel-support] 答复: 答复: 答复: 答复: 答复: 答复: 答复: 答复: 答复: 答复: Re: Quote for 1 NC393-Stereo camera

2018-01-09 Thread Oleg
Hello,

Here's an updated firmware image:
https://community.elphel.com/files/393/20180109/

The instructions are in the readme.md in the zip archive. Let me know if
you have any questions.
To update camera's NAND flash you will need to boot from the recovery uSD
card.

Best regards,
Oleg Dzhimiev
Electronics Engineer
phone: +1 801 783  x124
Elphel, Inc.
___
Support-list mailing list
Support-list@support.elphel.com
http://support.elphel.com/mailman/listinfo/support-list_support.elphel.com


Re: [Elphel-support] 答复: 答复: 答复: 答复: 答复: 答复: 答复: 答复: 答复: 答复: Re: Quote for 1 NC393-Stereo camera

2018-01-09 Thread Andrey Filippov
Winston, that was really a software bug that influenced only some lighting 
conditionsso we did not notice it. It is now fixed in git repository
https://git.elphel.com/Elphel/elphel-apps-autoexposure/commit/4a215f5ce69d3953585874fa0645bffde44dbafc
 ,
we will post the binary image for the uSD card shortly.

Andrey

 On Mon, 08 Jan 2018 23:47:18 -0800 Elphel Support 
support-list@support.elphel.com wrote  



 On Mon, 08 Jan 2018 20:58:46 -0800 Winston 
Zhangwinston.zh...@blacksesame.com.cn wrote  

Hi Andrey
   I have set all the same parameters.  Please look at attachments. How did 
I set the 245 as your shown on screenshot? This page on mine did not show any 
object, please look at the attachments.
   And two camera images change asynchronously. How can I make this two 
camera image changes synchronously?
  








Winston, to set same parameter as "245" - just open and press "Apply"

http://192.168.0.9/parsedit.php?sensor_port=0AEXP_LEVEL=0xf500refresh


http://192.168.0.9/parsedit.php?sensor_port=1AEXP_LEVEL=0xf500refresh

Or
 On that user interface that you've sent last video press on "more details..." 
(it is just above the sliders) and then on the yellow tab (#4) - that will open 
AE contols like on Fig.4 here:
https://wiki.elphel.com/wiki/Autoexposure

Andrey









___
Support-list mailing list
Support-list@support.elphel.com
http://support.elphel.com/mailman/listinfo/support-list_support.elphel.com


Re: [Elphel-support] 答复: 答复: 答复: 答复: 答复: 答复: 答复: 答复: 答复: 答复: Re: Quote for 1 NC393-Stereo camera

2018-01-08 Thread Elphel Support


 On Mon, 08 Jan 2018 20:58:46 -0800 Winston 
Zhangwinston.zh...@blacksesame.com.cn wrote  

Hi Andrey
   I have set all the same parameters.  Please look at attachments. How did 
I set the 245 as your shown on screenshot? This page on mine did not show any 
object, please look at the attachments.
   And two camera images change asynchronously. How can I make this two 
camera image changes synchronously?
  








Winston, to set same parameter as "245" - just open and press "Apply"

http://192.168.0.9/parsedit.php?sensor_port=0AEXP_LEVEL=0xf500refresh


http://192.168.0.9/parsedit.php?sensor_port=1AEXP_LEVEL=0xf500refresh

Or
 On that user interface that you've sent last video press on "more details..." 
(it is just above the sliders) and then on the yellow tab (#4) - that will open 
AE contols like on Fig.4 here:
https://wiki.elphel.com/wiki/Autoexposure

Andrey



___
Support-list mailing list
Support-list@support.elphel.com
http://support.elphel.com/mailman/listinfo/support-list_support.elphel.com