Imaging solutions with Free Software & Open Hardware

Who's online

There are currently 0 users online.

Using camogm with Elphel393 camera

Wiki Recent Changes - Fri, 01/06/2017 - 10:40

← Older revision Revision as of 17:40, 6 January 2017 (One intermediate revision not shown)Line 1: Line 1: -Elphel 393 series cameras can be equipped with m.2 SSD drive used for images and video recording. The camera equipped with a drive should be configured in a way that the drive can be accessible from Linux operating system. This is normally done with a configuration script which is executed during system boot. The script is usually located in the root directory on microSD card or in the /etc directory and called ''init_elphel393.sh''. These is a set of parameters in the beginning of the script and one of them is responsible for SATA controller configuration and driver loading:+===Introduction===  +Elphel 393 series cameras can be equipped with m.2 SSD drive used for images and video recording. The camera equipped with a drive should be configured in a way that the drive can be accessible from Linux operating system. This is normally done with a configuration script which is executed during system boot. The script is located in the /etc/elphel393 directory and called ''init_elphel393.py''. There is a set of parameters which this script receives from init script /etc/ini.d/init_elphel393 and one of them is responsible for SATA controller configuration and driver loading: -  SATA_EN=1+  \"sata\"            :1, Make sure this parameter is set to 1 if your camera is equipped with SSD drive. You should see the following messages in system log after successful initialization and auto-mounting: Make sure this parameter is set to 1 if your camera is equipped with SSD drive. You should see the following messages in system log after successful initialization and auto-mounting: Line 17: Line 18:   [  30.646115] sd 0:0:0:0: [sda] Attached SCSI disk   [  30.646115] sd 0:0:0:0: [sda] Attached SCSI disk -The disk model and the number of partitions(sda1 and sda2) in the example above correspond to a test platform and they may not be the same in your camera. <code>/dev/sda2</code> in this example is not partitioned and not mounted:+The disk model and the number of partitions (sda1 and sda2) in the example above correspond to a test platform and they may not be the same in your camera. <code>/dev/sda2</code> in this example is not partitioned and not mounted:   ~# mount   ~# mount Line 31: Line 32:   /dev/sda1 on /mnt/sda1 type ext2 (rw,relatime,errors=continue)   /dev/sda1 on /mnt/sda1 type ext2 (rw,relatime,errors=continue) -The program for video/images recording is called ''camogm''. Its full description for previous series of Elphel cameras is available on [[Camogm]] wiki page. Current version of the program supports four sensor channels and has the same command set as the previous version, but commands can be sent to each channel separately. The program can be started the same way as described in [[Camogm#Starting_camogm|Starting camogm]] section, but now it will create four command pipes instead of one and each pipe will have channel number appended to the name provided on command line:+The program for video/images recording is called ''camogm''. Its full description for previous series of Elphel cameras is available on [[Camogm]] wiki page. Current version of the program supports four sensor channels and has the same command set as the previous version. The program can be started the same way as described in [[Camogm#Starting_camogm|Starting camogm]] section and it will create command pipe called ''camogm_cmd'' in the following directory:   root@elphel393:~# ls -l /var/volatile/state/   root@elphel393:~# ls -l /var/volatile/state/ Line 42: Line 43: Note, that ''camogm'' is under development and not all features of the previous version have been ported to new camera. As for now, geo tagging and exif specific commands are not implemented. Watch for updates on our [https://github.com/Elphel github page]. Note, that ''camogm'' is under development and not all features of the previous version have been ported to new camera. As for now, geo tagging and exif specific commands are not implemented. Watch for updates on our [https://github.com/Elphel github page].  +You can start ''camogm'' as a standalone command-line application or use web GUI interface in a browser to control the program. The examples of using ''camogm'' in both ways are shown below. ===Example=== ===Example=== ====1. WebGUI==== ====1. WebGUI==== * http://192.168.0.9/camogmgui.php * http://192.168.0.9/camogmgui.php -* In the '''Format''' tab checkthe settings then press OK button+* In the '''Format''' tab check the settings then press OK button {| {| | valign='top'|[[File:Camogmgui format tab.png|thumb|400px|Fig.1 Camogmgui - change recording formats]] | valign='top'|[[File:Camogmgui format tab.png|thumb|400px|Fig.1 Camogmgui - change recording formats]] Line 51: Line 53: |} |} =====Fast recording===== =====Fast recording=====  +''camogm'' can write data to disk or partition in a special fast recording mode. This mode supports higher sequential write speeds than those that can be achieved during regular file recording to a file system but additional step to extract data from disk is needed. Use [https://github.com/Elphel/elphel-tools-x393 these scripts] to extract raw data from disk and split it into separate images. * Keep '''Use fast recording''' checkbox selected - press OK then RECORD * Keep '''Use fast recording''' checkbox selected - press OK then RECORD ** An image sequence will be written to a raw partition. ** An image sequence will be written to a raw partition. Line 56: Line 59: =====Normal recording===== =====Normal recording=====  +In this mode ''camogm'' saves data to regular files on a file system. * Deselect '''Use fast recording''' * Deselect '''Use fast recording''' * Choose '''Format''' (Ogg Media Stream is not tested) * Choose '''Format''' (Ogg Media Stream is not tested) Mikhail

File:Camogmgui main.png

Wiki Recent Changes - Fri, 01/06/2017 - 09:47

uploaded "[[File:Camogmgui main.png]]"

Mikhail

Tmp manual

Wiki Recent Changes - Fri, 01/06/2017 - 06:44

Serial console access:

← Older revision Revision as of 13:44, 6 January 2017 Line 82: Line 82: Most likely the device will be <b>/dev/ttyUSB0</b>. Settings: Most likely the device will be <b>/dev/ttyUSB0</b>. Settings: * <b>115200 8N1, no</b> for hardware/software flow control * <b>115200 8N1, no</b> for hardware/software flow control - +Refer to the following article for more details on using '''minicom''': [http://wiki.elphel.com/index.php?title=Using_minicom_to_connect_to_Elphel393_camera Using minicom to connect to Elphel393 camera] - + ==<font color="blue">Web user interface (camvc)</font>== ==<font color="blue">Web user interface (camvc)</font>== Mikhail

Boot options 393

Wiki Recent Changes - Fri, 01/06/2017 - 06:18

← Older revision Revision as of 13:18, 6 January 2017 (One intermediate revision not shown)Line 17: Line 17: ==<font color="blue">Boot instructions</font>== ==<font color="blue">Boot instructions</font>== ===Internal NAND flash (default)=== ===Internal NAND flash (default)=== -* Make sure the recovery card is not inserted (recovery card can stay in)+* Make sure the recovery card is not inserted (regular card can stay in) * Power on * Power on Line 79: Line 79: * '''To build a custom device tree''', see [http://wiki.elphel.com/index.php?title=Poky_2.0_manual SDK manual]''' * '''To build a custom device tree''', see [http://wiki.elphel.com/index.php?title=Poky_2.0_manual SDK manual]'''  +The cp210x_gpio.py script controls GPIO pins for CP210X USB to UART Bridges and it comes with the patch for the cp210x driver. ==<font color="blue">cp210x_gpio.py -h</font>== ==<font color="blue">cp210x_gpio.py -h</font>==   $./cp210x_gpio.py -h   $./cp210x_gpio.py -h Mikhail

Using camogm with Elphel393 camera

Wiki Recent Changes - Thu, 01/05/2017 - 20:25

← Older revision Revision as of 03:25, 6 January 2017 Line 1: Line 1: -Elphel 393 series cameras can be equipped with m.2 SSD drive used for images and video recording. The camera equipped with a drive should be configured in a way that the drive can be accessible from Linux operating system. This is normally done with a configuration script which is executed during system boot. The script is usually located in the root directory on microSD card or in the /etc directory and called ''init_elphel393.sh''. These is a set of parameters in the beginning of the script and one of them is responsible for SATA controller configuration and driver loading:+===Introduction===  +Elphel 393 series cameras can be equipped with m.2 SSD drive used for images and video recording. The camera equipped with a drive should be configured in a way that the drive can be accessible from Linux operating system. This is normally done with a configuration script which is executed during system boot. The script is located in the /etc/elphel393 directory and called ''init_elphel393.py''. There is a set of parameters which this script receives from init script /etc/ini.d/init_elphel393 and one of them is responsible for SATA controller configuration and driver loading: -  SATA_EN=1+  \"sata\"            :1, Make sure this parameter is set to 1 if your camera is equipped with SSD drive. You should see the following messages in system log after successful initialization and auto-mounting: Make sure this parameter is set to 1 if your camera is equipped with SSD drive. You should see the following messages in system log after successful initialization and auto-mounting: Line 17: Line 18:   [  30.646115] sd 0:0:0:0: [sda] Attached SCSI disk   [  30.646115] sd 0:0:0:0: [sda] Attached SCSI disk -The disk model and the number of partitions(sda1 and sda2) in the example above correspond to a test platform and they may not be the same in your camera. <code>/dev/sda2</code> in this example is not partitioned and not mounted:+The disk model and the number of partitions (sda1 and sda2) in the example above correspond to a test platform and they may not be the same in your camera. <code>/dev/sda2</code> in this example is not partitioned and not mounted:   ~# mount   ~# mount Line 31: Line 32:   /dev/sda1 on /mnt/sda1 type ext2 (rw,relatime,errors=continue)   /dev/sda1 on /mnt/sda1 type ext2 (rw,relatime,errors=continue) -The program for video/images recording is called ''camogm''. Its full description for previous series of Elphel cameras is available on [[Camogm]] wiki page. Current version of the program supports four sensor channels and has the same command set as the previous version, but commands can be sent to each channel separately. The program can be started the same way as described in [[Camogm#Starting_camogm|Starting camogm]] section, but now it will create four command pipes instead of one and each pipe will have channel number appended to the name provided on command line:+The program for video/images recording is called ''camogm''. Its full description for previous series of Elphel cameras is available on [[Camogm]] wiki page. Current version of the program supports four sensor channels and has the same command set as the previous version. The program can be started the same way as described in [[Camogm#Starting_camogm|Starting camogm]] section and it will create command pipe called ''camogm_cmd'' in the following directory:   root@elphel393:~# ls -l /var/volatile/state/   root@elphel393:~# ls -l /var/volatile/state/ Line 42: Line 43: Note, that ''camogm'' is under development and not all features of the previous version have been ported to new camera. As for now, geo tagging and exif specific commands are not implemented. Watch for updates on our [https://github.com/Elphel github page]. Note, that ''camogm'' is under development and not all features of the previous version have been ported to new camera. As for now, geo tagging and exif specific commands are not implemented. Watch for updates on our [https://github.com/Elphel github page].  +You can start ''camogm'' as a stand-along command-line application or use web GUI interface in a browser to control the program. The examples of using ''camogm'' in both ways are shown below. ===Example=== ===Example=== ====1. WebGUI==== ====1. WebGUI==== * http://192.168.0.9/camogmgui.php * http://192.168.0.9/camogmgui.php -* In the '''Format''' tab checkthe settings then press OK button+* In the '''Format''' tab check the settings then press OK button {| {| | valign='top'|[[File:Camogmgui format tab.png|thumb|400px|Fig.1 Camogmgui - change recording formats]] | valign='top'|[[File:Camogmgui format tab.png|thumb|400px|Fig.1 Camogmgui - change recording formats]] Line 51: Line 53: |} |} =====Fast recording===== =====Fast recording=====  +''camogm'' can write data to disk or partition in a special fast recording mode. This mode supports higher sequential write speeds than those that can be achieved during regular file recording to a file system but additional step to extract data from disk is needed. Use [https://github.com/Elphel/elphel-tools-x393 these scripts] to extract raw data from disk and split it into separate images. * Keep '''Use fast recording''' checkbox selected - press OK then RECORD * Keep '''Use fast recording''' checkbox selected - press OK then RECORD ** An image sequence will be written to a raw partition. ** An image sequence will be written to a raw partition. Line 56: Line 59: =====Normal recording===== =====Normal recording=====  +In this mode ''camogm'' saves data to regular files on a file system. * Deselect '''Use fast recording''' * Deselect '''Use fast recording''' * Choose '''Format''' (Ogg Media Stream is not tested) * Choose '''Format''' (Ogg Media Stream is not tested) Mikhail

01/05/17 [imagej-elphel][master] by AndreyFilippov: Merge remote-tracking branch 'origin/dct'

Elphel GIT logs - Thu, 01/05/2017 - 20:23
AndreyFilippov committed changes to the Elphel git project :
Merge remote-tracking branch 'origin/dct'

01/05/17 [imagej-elphel][] by AndreyFilippov: Merge remote-tracking branch 'origin/dct'

Elphel GIT logs - Thu, 01/05/2017 - 20:23
AndreyFilippov committed changes to the Elphel git project :
Merge remote-tracking branch 'origin/dct'

01/05/17 [imagej-elphel][dct] by AndreyFilippov: trying with pure anti-periodic kernels

Elphel GIT logs - Thu, 01/05/2017 - 20:15
AndreyFilippov committed changes to the Elphel git project :
trying with pure anti-periodic kernels

01/05/17 [imagej-elphel][] by AndreyFilippov: trying with pure anti-periodic kernels

Elphel GIT logs - Thu, 01/05/2017 - 20:15
AndreyFilippov committed changes to the Elphel git project :
trying with pure anti-periodic kernels

10393

Wiki Recent Changes - Thu, 01/05/2017 - 20:14

Mechanical properties:

← Older revision Revision as of 03:14, 6 January 2017 (3 intermediate revisions not shown)Line 21: Line 21: ====Interfaces==== ====Interfaces==== -[[File:Nc393 4sensors.jpeg|thumb|220px|10393 + 4 sensors]]+[[File:Nc393-dev-sm.jpeg|thumb|220px|10393 + 4 sensors]] * Gigabit ethernet * Gigabit ethernet * micro USB - system console (serial port), reboot, select boot device * micro USB - system console (serial port), reboot, select boot device Line 42: Line 42: ====Power==== ====Power==== * 3.3VDC * 3.3VDC -====Mechanical properties====+====Physical properties==== * Dimensions: 96x38x20.5 mm (with all connectors installed). Height can be reduced by removing the network connector. * Dimensions: 96x38x20.5 mm (with all connectors installed). Height can be reduced by removing the network connector. * Weight: 31 g * Weight: 31 g Line 58: Line 58: * Sources: * Sources: ** [https://github.com/Elphel GitHub/Elphel] ** [https://github.com/Elphel GitHub/Elphel]  +* SDK installation docs  +** [[Poky_2.0_manual|Set up development environment]]  +  +====User Manual====  +* [[Tmp_manual|User guide]] ====License==== ====License==== Oleg

10393

Wiki Recent Changes - Thu, 01/05/2017 - 17:46

SDK:

← Older revision Revision as of 00:46, 6 January 2017 (One intermediate revision not shown)Line 58: Line 58: * Sources: * Sources: ** [https://github.com/Elphel GitHub/Elphel] ** [https://github.com/Elphel GitHub/Elphel]  +* SDK installation docs  +** [[Poky_2.0_manual|Set up development environment]]  +  +====User Manual====  +* [[Tmp_manual|User guide]] ====License==== ====License==== Oleg

01/05/17 [elphel-apps-camogm][master] by Mikhail Karpenko: Add camogm_test binary to .gitignore

Elphel GIT logs - Thu, 01/05/2017 - 15:53
Mikhail Karpenko committed changes to the Elphel git project :
Add camogm_test binary to .gitignore

01/05/17 [elphel-apps-camogm][] by Mikhail Karpenko: Add camogm_test binary to .gitignore

Elphel GIT logs - Thu, 01/05/2017 - 15:53
Mikhail Karpenko committed changes to the Elphel git project :
Add camogm_test binary to .gitignore

01/05/17 [elphel-apps-camogm][master] by Mikhail Karpenko: Do not restart file in raw mode when frame limit is reached

Elphel GIT logs - Thu, 01/05/2017 - 15:50
Mikhail Karpenko committed changes to the Elphel git project :
Do not restart file in raw mode when frame limit is reached

01/05/17 [elphel-apps-camogm][] by Mikhail Karpenko: Do not restart file in raw mode when frame limit is reached

Elphel GIT logs - Thu, 01/05/2017 - 15:50
Mikhail Karpenko committed changes to the Elphel git project :
Do not restart file in raw mode when frame limit is reached

Tmp manual

Wiki Recent Changes - Thu, 01/05/2017 - 14:09

Tools for calibrated systems:

← Older revision Revision as of 21:09, 5 January 2017 Line 267: Line 267: ** distortion correction (pixel mapping) ** distortion correction (pixel mapping) ** rectification and projection ** rectification and projection  +** '''JP46 Reader camera''' - decode JP4/JP46  +** '''Eyesis correction''' - post-process JP4s using calibration data ====switch between ERS and GRR modes in MT9P006==== ====switch between ERS and GRR modes in MT9P006==== Oleg

01/05/17 [imagej-elphel][master] by AndreyFilippov: before using precisely anti-periodic target kernels

Elphel GIT logs - Thu, 01/05/2017 - 13:49
AndreyFilippov committed changes to the Elphel git project :
before using precisely anti-periodic target kernels

01/05/17 [imagej-elphel][] by AndreyFilippov: before using precisely anti-periodic target kernels

Elphel GIT logs - Thu, 01/05/2017 - 13:49
AndreyFilippov committed changes to the Elphel git project :
before using precisely anti-periodic target kernels

JP4

Wiki Recent Changes - Thu, 01/05/2017 - 13:46

python:

← Older revision Revision as of 20:46, 5 January 2017 (9 intermediate revisions not shown)Line 84: Line 84: ==<font color="blue">JP4</font>== ==<font color="blue">JP4</font>==  +{|  +|[[File:Jp4 example rotated asjpeg.jpeg|200px|thumb|JP4 opened as JPEG, rotated 90&deg;]]  +|[[File:Jp4 example rotated processed.jpeg|200px|thumb|JP4 processed, rotated 90&deg;]]  +|}  +* If opened as a normal image the macro blocks will be displayed as 8x32.  +===PC===  +====ImageJ plugin====  +* [[Elphel_Software_Kit_for_Ubuntu#ImageJ_and_Elphel_plugins_for_imageJ|Install ImageJ plugins]]  +* run: Plugins > JP46 reader camera  +** can display JP4/JP46 as monochrome w/o demosaicing  +** can split color channels  +====html canvas + javascript====  +* [https://github.com/Elphel/elphel-web-393/blob/master/src/jp4-canvas/elphel.js reorderJP4Blocks()]  +====python====  +* very slow  + import numpy as np  + from PIL import Image  + import scipy.misc  + ...  + # in JP4 format the 16x16 block is 8x32 (GRBG)  + # the 1st line of 8x32 blocks is the left half of the image  + # the 2nd line of 8x32 blocks is the right half  +       + # vertical step = 16px  + for y in range(0,self.h,16):  +  for x in range(0,self.w,16):  +                   +    bx = x if x<self.w/2 else x-self.w/2  +    by = y if x<self.w/2 else y+8  +                   +    block8x8_gr = self.px[by:by+8,2*bx+0 :2*bx+ 8]  +    block8x8_r  = self.px[by:by+8,2*bx+8 :2*bx+16]  +    block8x8_b  = self.px[by:by+8,2*bx+16:2*bx+24]  +    block8x8_gb = self.px[by:by+8,2*bx+24:2*bx+32]  +                 +    for dy in range(8):  +      for dx in range(8):  +        #OpenCV uses BGR format  +        output[y+2*dy+0,x+2*dx+0]=[0,block8x8_gr[dy,dx][0],0]  +        output[y+2*dy+0,x+2*dx+1]=[0,0,block8x8_r[dy,dx][0]]  +        output[y+2*dy+1,x+2*dx+0]=[block8x8_b[dy,dx][0],0,0]  +        output[y+2*dy+1,x+2*dx+1]=[0,block8x8_gb[dy,dx][0],0]  + ... ==<font color="blue">JP46</font>== ==<font color="blue">JP46</font>== Line 92: Line 135: |} |} ===PC=== ===PC===  +====ImageJ plugin====  +* same as for [[JP4#ImageJ_plugin|JP4]] ====Decoding in MATLAB==== ====Decoding in MATLAB==== JP46 format can be easy manipulated in [http://www.mathworks.com/matlabcentral/fileexchange/22144 MATLAB] JP46 format can be easy manipulated in [http://www.mathworks.com/matlabcentral/fileexchange/22144 MATLAB] Oleg

Pages

Subscribe to www3.elphel.com aggregator