'''
Created on 05/09/2010
@author: tiago buriol
'''
import os
import Image # PIL - Python Image Library (instale via Sinaptyc)
diretorio = "/home/buriol/PYTHON_PROJECTS/CILAMCE2010/src/ReconstrCROPPED"
arquivos = os.listdir(diretorio)
arquivos.sort() #ordena os arquivos pelo nome
n=0
# Corta imagens e salva
for arquivo in arquivos:
fullpath = os.path.join(diretorio,arquivo)
if os.path.isfile(fullpath):
n = n + 1
img = Image.open(fullpath)
print "Lendo arquivo", n, "de", len(arquivos)
im = img.crop([0,0,128,128])
im.save(os.path.join("/home/buriol/Imagens",arquivo), "BMP")
5 de set. de 2010
Visualizando tensores como elipsóides usando VTK e Python
# Biblioteca vtk para python
from vtk import *
# ENTRADA DE DADOS
# Pontos
points = vtkPoints()
points.SetNumberOfPoints(3)
points.InsertPoint(0,76.3221,77.55,6.51956)
points.InsertPoint(1,76.61,77.2565,6.48612)
points.InsertPoint(2,77.2707,76.61,6.44554)
# Tensores
dbar = vtkDoubleArray()
dbar.SetNumberOfTuples(3)
dbar.SetNumberOfComponents(9)
dbar.InsertTuple9(0,-1.15233,0.0831558,0.0469417,0.0831558,-1.25721,0.10167,0.0469417,0.10167,-1.10715)
dbar.InsertTuple9(1,-1.18056,0.0817272,0.016076,0.0817272,-1.32675,0.125833,0.016076,0.125833,-1.15438)
dbar.InsertTuple9(2,-1.18056,0.0817272,0.016076,0.0817272,-1.32675,0.125833,0.016076,0.125833,-1.15438)
# PROCESSAMENTO PARA GERAR OS GLIFOS
# Polydata
indata = vtkPolyData()
indata.SetPoints(points)
indata.GetPointData().SetTensors(dbar)
# Codigo para uma esfera
src = vtkSphereSource()
src.SetThetaResolution(16)
src.SetPhiResolution(16)
# glifos
epp = vtkTensorGlyph()
epp.SetInput(indata)
epp.SetSourceConnection(src.GetOutputPort())
epp.SetScaleFactor(1)
epp.ClampScalingOn()
#epp.SymmetricOn()
epp.ColorGlyphsOff()
epp.ThreeGlyphsOff()
epp.ExtractEigenvaluesOn()
epp.SetColorModeToEigenvalues()
# Mapeador para os dados
map = vtkPolyDataMapper()
map.SetInputConnection(epp.GetOutputPort())
# VISUALIZACAO
# Ator
elactor = vtkActor()
elactor.SetMapper(map)
# Renderizador
renderer = vtkRenderer()
renderer.AddActor(elactor)
# Janela
renderWindow = vtkRenderWindow()
renderWindow.AddRenderer( renderer )
# Interador
interactor = vtkRenderWindowInteractor()
interactor.SetRenderWindow(renderWindow)
interactor.Initialize()
interactor.Start()
from vtk import *
# ENTRADA DE DADOS
# Pontos
points = vtkPoints()
points.SetNumberOfPoints(3)
points.InsertPoint(0,76.3221,77.55,6.51956)
points.InsertPoint(1,76.61,77.2565,6.48612)
points.InsertPoint(2,77.2707,76.61,6.44554)
# Tensores
dbar = vtkDoubleArray()
dbar.SetNumberOfTuples(3)
dbar.SetNumberOfComponents(9)
dbar.InsertTuple9(0,-1.15233,0.0831558,0.0469417,0.0831558,-1.25721,0.10167,0.0469417,0.10167,-1.10715)
dbar.InsertTuple9(1,-1.18056,0.0817272,0.016076,0.0817272,-1.32675,0.125833,0.016076,0.125833,-1.15438)
dbar.InsertTuple9(2,-1.18056,0.0817272,0.016076,0.0817272,-1.32675,0.125833,0.016076,0.125833,-1.15438)
# PROCESSAMENTO PARA GERAR OS GLIFOS
# Polydata
indata = vtkPolyData()
indata.SetPoints(points)
indata.GetPointData().SetTensors(dbar)
# Codigo para uma esfera
src = vtkSphereSource()
src.SetThetaResolution(16)
src.SetPhiResolution(16)
# glifos
epp = vtkTensorGlyph()
epp.SetInput(indata)
epp.SetSourceConnection(src.GetOutputPort())
epp.SetScaleFactor(1)
epp.ClampScalingOn()
#epp.SymmetricOn()
epp.ColorGlyphsOff()
epp.ThreeGlyphsOff()
epp.ExtractEigenvaluesOn()
epp.SetColorModeToEigenvalues()
# Mapeador para os dados
map = vtkPolyDataMapper()
map.SetInputConnection(epp.GetOutputPort())
# VISUALIZACAO
# Ator
elactor = vtkActor()
elactor.SetMapper(map)
# Renderizador
renderer = vtkRenderer()
renderer.AddActor(elactor)
# Janela
renderWindow = vtkRenderWindow()
renderWindow.AddRenderer( renderer )
# Interador
interactor = vtkRenderWindowInteractor()
interactor.SetRenderWindow(renderWindow)
interactor.Initialize()
interactor.Start()
Marcadores:
Python,
Tensor,
Visualização Científica,
VTK
17 de ago. de 2010
Habilitando as três NVidia GeForce GTX280 no Ubuntu 9.04
.
Primeiramente, foi necessário achar o "endereço" do barramento de cada placa fazendo:
$ sudo lspci
que forneceu a seguinte saída (somente a parte que interessa):
...
02:02.0 PCI bridge: nVidia Corporation Device 05b1 (rev a2)
03:00.0 VGA compatible controller: nVidia Corporation GT200 [GTX280] (rev a1)
04:00.0 VGA compatible controller: nVidia Corporation GT200 [GTX280] (rev a1)
05:0b.0 FireWire (IEEE 1394): VIA Technologies, Inc. VT6306 Fire II IEEE 1394 OHCI Link Layer Controller (rev c0)
06:00.0 Audio device: Creative Labs [X-Fi Titanium series] EMU20k2 (rev 03)
07:00.0 VGA compatible controller: nVidia Corporation GT200 [GTX280] (rev a1)
...
Então alterei o arquivo xorg-config fazendo:
$ sudo gedit /etc/X11/xorg.conf
Alterando as seções "Device" da placa de vídeo como segue:
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GTX 280"
BusID "PCI:3:0:0"
Screen 0
EndSection
Section "Device"
Identifier "Device1"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GTX 280"
BusID "PCI:3:0:0"
Screen 1
EndSection
Section "Device"
Identifier "Device2"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GTX 280"
BusID "PCI:4:0:0"
EndSection
Section "Device"
Identifier "Device3"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GTX 280"
BusID "PCI:7:0:0"
EndSection
Para o sistema detectar as 3 placas GTX280 tive que alterar o arquivo menu.lst, do grub, fazendo:
$ sudo gedit /boot/grub/menu.lst
e adicionando a parte em negrito mostrada abaixo
Depois de reiniciar, digitei no console os seguintes comandos
$ sudo nvidia-xconfig --multigpu=on
$ sudo nvidia-xconfig --sli=on
Depois de reiniciar novamente apareceu as três placas no painel de nvidia-settings.
Primeiramente, foi necessário achar o "endereço" do barramento de cada placa fazendo:
$ sudo lspci
que forneceu a seguinte saída (somente a parte que interessa):
...
02:02.0 PCI bridge: nVidia Corporation Device 05b1 (rev a2)
03:00.0 VGA compatible controller: nVidia Corporation GT200 [GTX280] (rev a1)
04:00.0 VGA compatible controller: nVidia Corporation GT200 [GTX280] (rev a1)
05:0b.0 FireWire (IEEE 1394): VIA Technologies, Inc. VT6306 Fire II IEEE 1394 OHCI Link Layer Controller (rev c0)
06:00.0 Audio device: Creative Labs [X-Fi Titanium series] EMU20k2 (rev 03)
07:00.0 VGA compatible controller: nVidia Corporation GT200 [GTX280] (rev a1)
...
Então alterei o arquivo xorg-config fazendo:
Alterando as seções "Device" da placa de vídeo como segue:
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GTX 280"
BusID "PCI:3:0:0"
Screen 0
EndSection
Section "Device"
Identifier "Device1"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GTX 280"
BusID "PCI:3:0:0"
Screen 1
EndSection
Section "Device"
Identifier "Device2"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GTX 280"
BusID "PCI:4:0:0"
EndSection
Section "Device"
Identifier "Device3"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GTX 280"
BusID "PCI:7:0:0"
EndSection
Para o sistema detectar as 3 placas GTX280 tive que alterar o arquivo menu.lst, do grub, fazendo:
$ sudo gedit /boot/grub/menu.lst
e adicionando a parte em negrito mostrada abaixo
title Ubuntu 9.04, kernel 2.6.28-19-generic
uppermem 524288
uuid efe8ac3e-d12d-43b9-9f15-2df7836e7c1d
kernel /boot/vmlinuz-2.6.28-19-generic root=UUID=efe8ac3e-d12d-43b9-9f15-2df7836e7c1d ro quiet splash vmalloc=256MB pci=nommconf
initrd /boot/initrd.img-2.6.28-19-generic
quiet
uppermem 524288
uuid efe8ac3e-d12d-43b9-9f15-2df7836e7c1d
kernel /boot/vmlinuz-2.6.28-19-generic root=UUID=efe8ac3e-d12d-43b9-9f15-2df7836e7c1d ro quiet splash vmalloc=256MB pci=nommconf
initrd /boot/initrd.img-2.6.28-19-generic
quiet
Depois de reiniciar, digitei no console os seguintes comandos
$ sudo nvidia-xconfig --multigpu=on
$ sudo nvidia-xconfig --sli=on
Depois de reiniciar novamente apareceu as três placas no painel de nvidia-settings.
19 de mai. de 2010
Script Python parta mudar extensão e nomes de arquivos em um diretório
#--------------------------------------------------------------------
# renomeia.py
#
# Script Python para modificar a extensao de aquivos em um diretorio
# e mudar o nome
#
# Uso:
# Defina o diretorio, a extensão que quer retirar e a nova extensao, que
# pode ser vazia (" ").
# Por exemplo:
# diretorio = "/home/gildo/imagens"
# extensao = ".*JPEG" (para retirar as extensoes ".dcm", nao esqueca o asterisco)
# novaExtensao = ".jpg" (nesse caso eh vazia, mas poderia ser ".raw", por ex.)
#--------------------------------------------------------------------
import re
import string
import os
# Coloque os seus parametros aqui...
diretorio = "/BACKUP/DICOM_FILES/AMNESIX"
extensao = ".*dcm"
novaExtensao = " " # nesse caso eh vazia
parteQueSai = "IM-0001-"
parteQueSubstitui = "slice"
# Muda extensao
reg = re.compile(extensao)
if os.path.isdir(diretorio) and not os.path.islink(diretorio):
arquivos = os.listdir(diretorio)
for arquivo in arquivos:
newExt = re.compile(extensao).match
if newExt(arquivo):
c = os.path.splitext(arquivo)
b = c[0] + novaExtensao
a = os.path.join(diretorio,arquivo)
b = os.path.join(diretorio,b)
os.rename(a,b)
# Modifica nome
if os.path.isdir(diretorio) and not os.path.islink(diretorio):
arquivos = os.listdir(diretorio)
for arquivo in arquivos:
print arquivo
novoNome = string.replace(arquivo, parteQueSai, parteQueSubstitui)
fullpathOld = os.path.join(diretorio,arquivo)
fullpathNew = os.path.join(diretorio,novoNome)
os.rename(fullpathOld, fullpathNew)
# Hasta...
# renomeia.py
#
# Script Python para modificar a extensao de aquivos em um diretorio
# e mudar o nome
#
# Uso:
# Defina o diretorio, a extensão que quer retirar e a nova extensao, que
# pode ser vazia (" ").
# Por exemplo:
# diretorio = "/home/gildo/imagens"
# extensao = ".*JPEG" (para retirar as extensoes ".dcm", nao esqueca o asterisco)
# novaExtensao = ".jpg" (nesse caso eh vazia, mas poderia ser ".raw", por ex.)
#--------------------------------------------------------------------
import re
import string
import os
# Coloque os seus parametros aqui...
diretorio = "/BACKUP/DICOM_FILES/AMNESIX"
extensao = ".*dcm"
novaExtensao = " " # nesse caso eh vazia
parteQueSai = "IM-0001-"
parteQueSubstitui = "slice"
# Muda extensao
reg = re.compile(extensao)
if os.path.isdir(diretorio) and not os.path.islink(diretorio):
arquivos = os.listdir(diretorio)
for arquivo in arquivos:
newExt = re.compile(extensao).match
if newExt(arquivo):
c = os.path.splitext(arquivo)
b = c[0] + novaExtensao
a = os.path.join(diretorio,arquivo)
b = os.path.join(diretorio,b)
os.rename(a,b)
# Modifica nome
if os.path.isdir(diretorio) and not os.path.islink(diretorio):
arquivos = os.listdir(diretorio)
for arquivo in arquivos:
print arquivo
novoNome = string.replace(arquivo, parteQueSai, parteQueSubstitui)
fullpathOld = os.path.join(diretorio,arquivo)
fullpathNew = os.path.join(diretorio,novoNome)
os.rename(fullpathOld, fullpathNew)
# Hasta...
27 de abr. de 2010
Lista de Peródicos
The MIDAS Journal is an Open Access on-line publication covering different domains from Visualization to Image processing.
The unique characteristics of the MIDAS Journal include:
-Open-access to articles and reviews
-Open peer-review that invites discussion between reviewers and authors
-Support for continuous revision of articles, code, and reviews
http://www.midasjournal.org/
The unique characteristics of the MIDAS Journal include:
-Open-access to articles and reviews
-Open peer-review that invites discussion between reviewers and authors
-Support for continuous revision of articles, code, and reviews
http://www.midasjournal.org/
28 de mar. de 2010
Intalando e configurando o Stardict com dicionarios do Babylon no Ubuntu 9.10
...
1 - Baixar os dicionário do Babylon (Pt/En e En/Pt) nos links:
http://go2.wordpress.com/?id=725X1342&site=joaoolavo.wordpress.com&url=http%3A%2F%2Finfo.babylon.com%2Fglossaries%2F38C%2FBabylon_English_Portuguese.BGL
e
http://go2.wordpress.com/?id=725X1342&site=joaoolavo.wordpress.com&url=http%3A%2F%2Finfo.babylon.com%2Fglossaries%2F38C%2FBabylon_English_Portuguese.BGL
ou, pelo terminal:
Os arquivos virão no formato .exe, que nada mais é que um arquivo compactado como o ZIP ou RAR. Basta clicar com o botão direito nos arquivos, extrair o conteúdo deles e os dicionários BGL aparecerão.
2 - Instalar o conversor de formatos dos dicionários
$ sudo apt-get install dictconv
3 - Convertendo os dicionários para o formato do Stardict
Se você obtiver uma saída como abaixo obteve sucesso!
Com isso serão gerados 3 arquivos:
* Babylon_English_Portuguese.dict
* Babylon_English_Portuguese.idx
* Babylon_English_Portuguese.ifo
4 - Instalação
Agora, precisamos finalmente comprimir o dicionário com o dictzip, que foi instalado quando instalamos o stardict-tools. Vamos lá:
#sudo dictzip Babylon_English_Portuguese.dict
E agora movemos nosso mais novo dicionário para o diretório do stardict no sistema como root:
Se iniciarmos agora o Stardict ele já estará carregando nosso novo dicionário.
Fontes:
http://joaoolavo.wordpress.com/2007/12/26/dicionarios-do-babylon-rodando-no-linux/
http://www.vivaolinux.com.br/artigo/Configurando-o-Stardict-com-dicionario-do-Babylon?pagina=3
1 - Baixar os dicionário do Babylon (Pt/En e En/Pt) nos links:
http://go2.wordpress.com/?id=725X1342&site=joaoolavo.wordpress.com&url=http%3A%2F%2Finfo.babylon.com%2Fglossaries%2F38C%2FBabylon_English_Portuguese.BGL
e
http://go2.wordpress.com/?id=725X1342&site=joaoolavo.wordpress.com&url=http%3A%2F%2Finfo.babylon.com%2Fglossaries%2F38C%2FBabylon_English_Portuguese.BGL
ou, pelo terminal:
#wget http://info.babylon.com/glossaries/38C/Babylon_English_Portuguese.BGL
#wget http://info.babylon.com/glossaries/4EA/Babylon_Portuguese_English_dic.BGL
#wget http://info.babylon.com/glossaries/4EA/Babylon_Portuguese_English_dic.BGL
Os arquivos virão no formato .exe, que nada mais é que um arquivo compactado como o ZIP ou RAR. Basta clicar com o botão direito nos arquivos, extrair o conteúdo deles e os dicionários BGL aparecerão.
2 - Instalar o conversor de formatos dos dicionários
$ sudo apt-get install dictconv
3 - Convertendo os dicionários para o formato do Stardict
#sudo ./dictconv Babylon_English_Portuguese.BGL -o Babylon_English_Portuguese.ifo
Se você obtiver uma saída como abaixo obteve sucesso!
Results
File: Babylon_English_Portuguese.ifo
Title: Babylon English-Portuguese
Author: Babylon Ltd.
Email: linguistic-support@babylon.com
Version:
License:
Description: This comprehensive English-Portuguese dictionary
contains words, phrases, abbreviations & acronyms. It includes
terms from a vast variety of subjects, such as Medicine,
Electronics, Zoology, Business, Computers, Religion, etc., and
features both the American and British forms of spelling.
Original Language: English
Destination Language: Portuguese
Headwords: 144759
Words: 144759
File: Babylon_English_Portuguese.ifo
Title: Babylon English-Portuguese
Author: Babylon Ltd.
Email: linguistic-support@babylon.com
Version:
License:
Description: This comprehensive English-Portuguese dictionary
contains words, phrases, abbreviations & acronyms. It includes
terms from a vast variety of subjects, such as Medicine,
Electronics, Zoology, Business, Computers, Religion, etc., and
features both the American and British forms of spelling.
Original Language: English
Destination Language: Portuguese
Headwords: 144759
Words: 144759
Com isso serão gerados 3 arquivos:
* Babylon_English_Portuguese.dict
* Babylon_English_Portuguese.idx
* Babylon_English_Portuguese.ifo
4 - Instalação
Agora, precisamos finalmente comprimir o dicionário com o dictzip, que foi instalado quando instalamos o stardict-tools. Vamos lá:
#sudo dictzip Babylon_English_Portuguese.dict
E agora movemos nosso mais novo dicionário para o diretório do stardict no sistema como root:
#sudo rm Babylon_English_Portuguese.BGL
# mv Babylon_English_Portuguese.* /usr/share/stardict/dic/
# mv Babylon_English_Portuguese.* /usr/share/stardict/dic/
Se iniciarmos agora o Stardict ele já estará carregando nosso novo dicionário.
Fontes:
http://joaoolavo.wordpress.com/2007/12/26/dicionarios-do-babylon-rodando-no-linux/
http://www.vivaolinux.com.br/artigo/Configurando-o-Stardict-com-dicionario-do-Babylon?pagina=3
1 de mar. de 2010
Tela preta no Youtube usando o Ubuntu
Se o seu Ubuntu está com o plugin do Flash Player "acanalhado", só aparece uma tela preta quando você vai assistir um vídeo, experimente os comandos abaixo
Funciona como mágica!
Fonte: http://ubuntuforums.org/showthread.php?s=5b9eca584f1c3e2a8c7446eb56b2381d&t=854891&page=2
sudo apt-get remove swfdec-mozilla sudo apt-get remove mozilla-plugin-gnash sudo apt-get remove adobe-flashplugin sudo apt-get remove flashplugin-nonfree sudo apt-get install flashplugin-nonfree
Funciona como mágica!
Fonte: http://ubuntuforums.org/showthread.php?s=5b9eca584f1c3e2a8c7446eb56b2381d&t=854891&page=2
Marcadores:
Configuração,
Configurações,
Linux,
Ubuntu 9.04
Assinar:
Postagens (Atom)