Vlfeat-ctypes 0.1.1 Um porto mínimo baseado em ctypes de algumas funções de vlfeat. Esta é uma porta mínima de alguns componentes da interface matlab da biblioteca vlfeat para visão computacional para Python. A biblioteca principal do vlfe está escrita em C. Na prática, porém, uma quantidade significativa da biblioteca está na interface MATLAB. Este projeto é uma porta de algumas funções dessa interface para pythonnumpy, usando ctypes. Contém apenas algumas funções (as necessárias para py-sdm). O processo não é muito difícil, só demora algum esforço. Os patches que adicionam funcionalidades adicionais são bem-vindos. Há também um garfo de vlfeat flutuando em torno de que incluem Boost :: Python wrappers. Eu não consegui fazer isso funcionar e não tentei muito porque eu vi que algumas das funções que eu precisava tinham quantidades significativas de código matlab de qualquer maneira. Você pode estar mais interessado nisso, embora a versão de Andreas Muellers pareça ser a atualização mais recente. Instalação O pacote pode ser instalado por pip ou easyinstall normalmente. No entanto, para realmente usá-lo, você também precisa baixar a biblioteca binária do vlfeat. Você pode instalar libvl. so (ou suas plataformas equivalentes) em algum lugar onde os Ctypes possam encontrá-lo você mesmo, ou use o script incluído para executá-lo com o python - m vlfeat. download. Se você adicionar um argumento - h, você mostrará como fazê-lo com uma distribuição binária pré-baixada. Se você instalar pacotes Python com sudo. Você pode precisar fazer o mesmo para o script de download. Acesso ao repositório VLFeat está em desenvolvimento ativo. Você pode navegar no nosso repositório Git ou baixá-lo por (Isso exigirá que o Git seja instalado). O topo do ramo mestre corresponde à versão mais recente do VLFeat, mas pode ser instável. Congratulamo-nos com as contribuições tanto para a documentação como para o código-fonte da VLFeat. Você pode criar patches contra o nosso repositório Git e enviá-los para inclusão na próxima versão. Existem duas maneiras de contribuir. Para pequenas mudanças, simplesmente clone nosso repositório público, como explicado acima. Depois de ter feito e comprometido suas alterações localmente, você pode enviá-las para o projeto via e-mail usando um comando como o formato-patch git. Para maiores adições, preferimos lidar com a colaboração através do github. Siga o seu tutorial para conquistar o nosso projeto e enviar suas modificações usando uma solicitação pull. Então, como posso chamar a função vlubcmatch no código C Esta é uma função MEX que só é chamada a ser chamada do MATLAB. Você não pode reutilizá-lo como é de um programa C de propósito geral. O objetivo de detectar se uma imagem contém o objeto em outra imagem. Como fazer o algoritmo de correspondência SIFT se eu uso vlfeat A API VLFeat C não fornece funções de correspondência de EIP fora da caixa. Então, basicamente, você precisa adaptar a chamada seção de código de teste 1 da seção de código MATLAB C, que é bastante fácil (veja abaixo). A principal desvantagem se você deseja realizar uma correspondência robusta é que esta função não leva em consideração a geometria. Ou seja, as coordenadas dos pontos-chave. O que você precisa além disso é uma verificação de consistência geométrica que normalmente é realizada por descobrir se há uma homografia entre as duas imagens (usando como entrada as correspondências descritas obtidas com o teste de razão). Isso é feito com um algoritmo como o RANSAC, uma vez que as correspondências podem incluir outliers. Mas também você pode acelerar a computação de correspondências com uma kd-tree. Então, uma alternativa se você precisar de uma implementação C simples está confiando em Open SIFT por Rob Hess, que inclui tudo o que você precisa, bem como uma ferramenta de linha de comando pronta para usar (e, portanto, exemplo) de correspondência: K1. Número de descritores na imagem 1, K2. Número de descritores na imagem 2, ND. Dimensão do descritor (128 para SIFT), descr1 e descr2. Descritores da imagem 1 e 2 resp. Ordem principal em linha, por exemplo, linhas K1 e colunas ND), porão. Valor de limiar de teste de razão, por exemplo, 1,5 no código MATLAB. Você usará a biblioteca vlfeat da mesma forma que você usa qualquer outra biblioteca com C. Primeiro, certifique-se de ter a biblioteca instalada em seu computador e saber onde ela está instalada. Você precisará incluir o cabeçalho necessário para cada parte da vlfeat que você está usando. Geralmente, um cabeçalho de biblioteca genérica para vlfeat e, em seguida, um cabeçalho específico para sift (por exemplo, incluir sift. h) (às vezes não há cabeçalho geral). Você precisará garantir que o comando gcc ou g inclua o INCLUDEPATH e LIBRARYPATH adequados para o seu ambiente, que permitirá que o gcc encontre seus arquivos vlfeat. (Por exemplo, - Ipathtodirholdingsift. h e - Lpathtovlfeatlib) Então você vai acabar com algo como isso para C: Há documentação on-line que irá ajudar. Veja: como configurar um projeto C básico que usa a biblioteca VLFeat Se você tiver mais perguntas, basta soltar uma linha nos comentários. Respondeu 14 de novembro 14 às 8:07 As APIs C são descritas em vlfeat. orgapisift. html. Existe apenas uma API de geração de descritor (extraindo). Não consigo encontrar uma API relacionada com correspondência. E na fonte, acho vlubcmatch. c que está fazendo um quotbasic matching algorithmquot. Mas eu não sei como chamar essa função de algoritmo neste arquivo. c (onde há muitas definições de macros que parecem relacionadas ao matlab). Minha principal questão é como fazer o algoritmo de correspondência SIFT se eu usar o mdmoment vlfeat ndash 14 de novembro 14 às 8:52 Essa foi a parte principal da resposta. Você incluirá sift. h em seu código juntamente com o outro inclui (stdio. h. Etc.). Em seguida, você usará a função, com os argumentos corretos conforme especificado em sift. h em seu código. Em seguida, você compilará o código (gcc ou g), especificando a biblioteca - lvl para que o vinculador conheça esse código, e você pode não precisar especificar o caminho -47 e ou - L47 para ter gcc e ld encontrar a lib e tamizar. H dependendo do seu ambiente. Sem truques. Ndash David C. Rankin 14 de novembro 14 em 8: 56 Uma função de mesclagem de modelo simples (que foi removida anteriormente desde V0.5.12) Use quotSfM-gtMore Funções-gtMerge Sparse Modelsquot Adicione quotmergequot para executar isso no modo de linha de comando. Isso funciona apenas se dois modelos tiverem uma sobreposição significativa. Certifique-se de fazer backup do modelo antes de executar a mesclagem. Uma interface simples para executar ferramentas externas Você pode especificar 3 comandos de ferramentas externas usando paramexternaltool123, onde s. nvm e s. ply podem ser usados para se referir ao arquivo NVM e PLY. Por exemplo, paramexternaltool1 uploadplytosomeserver s. ply - tokenmytoken paramexternaltool2 PoissonRecon - em s. poo - em seguida, empozar. plamente --depth 10 Use quotSfM-gtExtra Funções-gtRun External Toolquot e selecione a ferramenta para executar. Salvar modelo compacto - gt Salvar câmeras atuais Isso economiza um arquivo NVM do modelo atual com apenas a parte da câmera. Corrigido um bug relacionado a gtk que afeta o amplificador Linux OSX Sintoma: falha com aviso cativando a última referência à janela não destruída. Seleção melhorada de várias câmeras no modo de ponto esparso F1. Selecione as câmeras dentro de um retângulo F2. Selecione as câmeras que vêem os pontos 3D dentro de um retângulo. As várias câmeras selecionadas são refletidas. Para exclusão de foto, você pode segurar CTRL para excluí-los um a um. Minor logging e ajustes de parâmetros. Você pode ver o link para FAQ quando há um erro. Interface de comando de soquete adicionada para interação programável Execute quotVisualSFM helpquot da linha de comando para ver detalhes. A lista de comandos pode ser encontrada como ids de menu no ui. ini. Parâmetro adicionado para que a reconstrução seja determinada de forma determinista. Defina o comportamento paramétrico para 1 Salvamento automático do NVM para o modo GUI. Defina parammodelaautorização para 1 autosaved. nvm no diretório binário após reconstrução esparsa. Agora você pode definir baixa prioridade para o processo em todas as Ferramentas do SO - use Usar Prioridade Inferior Vire isso se o VisualSFM tornar seu computador muito lento. QuotTask Viewerquot renomeado para quotLog Windowquot Desativar o menu global Ubuntu para VisualSFM. Adicionado suporte para VLFeat SIFT binário (Obrigado a Ellis) Obter VLFeat SIFT binário e colocá-lo onde VisualSFM é. Defina paramusesiftgpu para 0, e paramusevlfeatorlowe para 1. Use paramvlfeatoptions para alterar a configuração do detector. Ligação de sequência híbrida adicionada (Graças a Ellis) O modo GUI agora aceita dois números quotRANGE STEPquot O modo linha de comando aceita quotRANGE, STEPquot para pares. Além do intervalo para coincidir, esse modo também faz uma correspondência pairwise completa para um conjunto de imagens sub-amostrado (toda a imagem STEP-th). Transformada GCP baseada em coordenadas da câmera adicionada Faça um arquivo. gcp de tal forma que cada linha dê: nome do arquivo XYZ Nota: o formato anterior aceito é: nome do arquivo imagex imagey XYZ Transformada baseada em GCP adicionada para linha de comando Use VisualSFM sfm..pmvsgcp entrada output. nvm GCPs serão Carregado a partir de input. gcp Adicionado triangulação pura para linha de comando Use VisualSFM sfmadd input. nvm output. nvm Adicionado ajuste de bundle constrangido Use quotSfM-gtMore Funções-gtRun Constrained BAquot Padrão: constante-estrutura de movimento variável BA SHIFT. CTRL de constante mudança de estrutura variável. Constante-intrínseco BA Parâmetro adicionado para substituir o comprimento focal EXIF Definir paramuseexplicar o comprimento para 0 Adicionado renderização de perspectiva para a visualização 3D Alternar por quotView - gt Perspective Viewquot Defina uiperspectiveview para 1 em ui. ini para escolha permanente. Adicionado nomes de menus alternativos para personalização de UI Modifique o modelo ui. ini e coloque-o onde o binário é. Permite a tradução para outros idiomas Opção adicionada para ocultar os menus de pesquisa Alterar uishowresearch para 0 em ui. ini Corrigido um erro no tratamento de grandes distâncias focais Corrigido um erro na manipulação do caminho binário sift que tenha espaços Corrigido um erro na detecção de ambiente de área de trabalho remota Botão da barra de ferramentas Para recarregar e abrir nv. ini Segure a tecla CTRL para abrir o arquivo no editor Item de menu para habilitar a tampa de memória de desativação para SiftGPU Alternar quotTools-gtEnable GPU-gtCap Usando a memória Usagequot Reutilizar o botão de miniatura para spanning treesmatch matrix Segure CTRL para mostrar árvores abrangentes Mantenha pressionado SHIFT para mostrar Matriz de correspondência Item de menu para mudar parampmvslevel entre 0 e 1 Use quotSfM-gtMais Funções-gtUse Nível 0 para PMVSquot Muitas mudanças nos nomes dos menus e ícones da barra de ferramentas. Reconstruir 3D - gt Reconstruir Retalho Esparso SFM - gt Reconstruir Currículo Executar CMVSPMVS - g Reconstruir Densas Atualizadas dicas de ferramentas para a barra de ferramentas Triangulação pura de câmeras conhecidas Criar um arquivo NVM que contenha câmeras válidas e 0 pontos Carregue o arquivo NVM e execute a compatibilidade de recursos como de costume Use quotSfM-gtMais Funções-gtFind Mais Pontos para gerar os pontos Manter a ordem da moldura de entrada No modo GUI, digite o comando quotsortquot na barra de status No modo de linha de comando, adicione o ordenamento ao sfmoption Re-optimize a reconstrução 3D para a calibração compartilhada No modo GUI , Use quotSHIFT Bundle Adjustmentquot No modo de linha de comando, adicione compartilhado ao sfmoption Suporte para usar duas GPUs para a correspondência de recursos Você deve usar o SiftGPU habilitado para CUDA para isso. Especificar dois dispositivos para paramusesiftgpu, por exemplo 1 2 O primeiro deve ser 1 ou 2 e o segundo pode ser 2 ou 3. Aqui 1 é para GLSL, 2,3 são para o primeiro dispositivo CUDA Suporte para o formato do bundler (.out) Exportar para o arquivo do bundler através QuotSave NView Matchquot Carregue o arquivo de agrupamento através do quotLoad NView Matchquot para visualização Observe que a distorção radial será ignorada. Lista suspensa para entrar opções e coordenadas GCP. As coordenadas da história são salvas no drop-list. Carregue uma lista de coordenadas 3D na lista suspensa (use a extensão. gcpx) Opção para salvar PLY no formato ASCII Alterar paramwriteasciiply para 1 opção Commandline para exportação de correspondências de recurso Use VisualSFM sfmexportpexportf input output. txt Exporte um arquivo de listagem para as imagens na visualização da pasta Para Meshlab Um arquivo de lista. txt é gerado para cada pasta PMVS Localizar a imagem atual no navegador de arquivos usando o comando quotlocatequot Visualização de resolução nativa para imagens grandes Correção de erros menores para a contagem de pontos incorreta em bundle. rd. out e discrepante PLY Minor bugfix para reconstrução de GPS - fotos marcadas dentro de uma pequena gama Visor menor da estrutura do bugfix abrangente V0.5.20 Corrigido um erro desagradável que arrasa a velocidade de desvantagem. O estágio de não distorção é provavelmente mais de 10 vezes mais rápido em grandes conjuntos de dados. O Visualizador de log também relata mais tempo na undisortion agora. Suporte para uma restrição de calibração compartilhada suave entre todas as imagens. Ativar por quotSfM - gt Mais Funções - gt Usar Calibração Compartilhada Experimente isso se todas as imagens tiverem o mesmo comprimento focal PBA neste modo é mais lenta e você pode habilitá-lo somente em um ajuste final do pacote Suporte para um arquivo de configuração UI (ui. ini), você pode adicionar as seguintes linhas de exemplo no arquivo Defina o seguinte como 1 para tornar o visualizador usando fundo escuro uidarkbackground 1 Defina o seguinte como 1 para tornar o visualizador de log destacado no início. Uilogviewerdeched 1 Defina o tamanho esperado da área de desenho. Uiviewdimension 800 600 Corrigido um erro de falha ao gerar mvs. ini para CMP-MVS no LinuxOSX Corrigido um problema que o carregamento de múltiplas imagens é muito lento no Linux O gerente GTK interno interno agora está desativado ao escolher vários arquivos. Corrigido um problema que o GTK Log Viewer não pode ser movido no Linux. Corrigido um erro ao usar a precisão de ponto flutuante fraco ao escrever PLY. Corrigido um erro que a função da árvore de expansão trava no Linux V0.5.19 Incluído o projeto de reconstrução de superfície esquemática (CVPR12) Remova o patch do Inválido do ponto de vista Projeto Melhorou a velocidade de correspondência do recurso da CPU Mais binários otimizados para LinuxOSX (pode ter aceleração significativa) Permite mostrar pontos Visto por n câmeras no modo N-View Point use o comando quotvmin nquot na barra de status Permite encerrar o ciclo de correspondência de recursos Permite ignorar a verificação da área de trabalho remota Alterar paramcheckremotedesktop para 0 Selecione um subconjunto priorizado de pares de imagens para coincidir em vez de todos Ativar por SfM - GtPairwise Matching-gtUse Subconjunto priorizado Use o subconjunto sob a linha de comando Isso só é usado quando as imagens são maiores do que paramprioritizedsubsetschitch Ponteiro quebrado corrigido no grupo do Google em Ajuda V0.5.18 Limpeza de pontos em um modo de ponto denso Pressione F1, arraste um retângulo para selecionar pontos, Pressione DEL para remover pontos Suportando pontos de controle de terra 2D (GCP) na transformação baseada em GCP Digite o GCP se Modo de lição, clicando em quotSfM-gtMais Função-Transformado com base em GtGCP, Você verá os controles associados no visualizador de tarefas. Salve os GCPs em um arquivo de texto usando quotSave NV-Matchquot e especificando. gcp como extensão. Carregue os GCPs por quotLoadAdd NV-Matchquot e selecione quotGround Control Pointquot na lista suspensa. A função quotManual Transformquot 3D em versões antigas é mesclada para QuetGuq-based Transformquot Export para o formato usado pelo CMP-MVS, além de Furukawas CMVSPMVS Clique em quotSfM-gtRun CMVSPMVSquot e selecione a segunda opção de formato Os dados serão salvos em output. nvm. Pasta cmp A opção de comando correspondente é cmp (eg VisualSFM sfmcmp input output. nvm) Exporte para novas câmerasv2.txt em vez de cameras. txt Inclui os nomes dos arquivos originais e o GPS no EXIF original Etapa de reconstrução única Use Ctrl quotResume 3Dquot para adicionar um único Imagem Linha de comando retomar a mudança VisuaSFM sfmresume ltinputgt. nvm output. nvm Agora procura imagens adicionais em ltinputgt. nvm. txt Parâmetro do thread de destruição Novo parâmetro para controlar o número de threads: paramundistortionthreadnum Ponteiro para o Google Group Clique em quotHelp-gtOnline Discussions para ir ao Google Group Mude entre VisionOpenGL 3D coordenada Visão (Y para baixo, Z para frente), OpenGL (Y para cima, Z para trás). A coordenada de visão é o padrão. Alternar por quotView-gtVisionOpenGL 3Dquot Girar a cena 3D em torno do eixo x por um ângulo especificado através do comando da barra de estado rotatexltngt Por exemplo, rotatex180, rotatex90, rotatex45. Alguns corrigem para a função de animação Corrigido um erro no comando quotam loadquot Feche a animação no ESCAPE pressione Corrigido um erro na estimativa da transformação 3D com pontos planares perfeitos V0.5.17 Exposição de um parâmetro para controlar o número de threads da CPU para a correspondência de recursos, paramcpusiftmatchnumthread: o número De threads da CPU, além da combinação de GPU. Excluídos dois parâmetros para a detecção de recursos paramusesiftgpu: 0 para CPU, 1 para GLSL, 2 para CUDA, 3 para parâmetros personalizados paramusesiftgpucustomize: o parâmetro personalizado quando paramusesiftgpu3 Corrigido um erro de não respeitar a seleção do dispositivo para a combinação de recursos Paramusesiftmatchgpu: 0 para CPU, 1 para GLSL, 2 para CUDA Corrigido um erro de não selecionar imagens com maiúsculas. Extensões de arquivo JPG no Linux, Corrigido um erro de não ler coordenadas do EXIF GPS quando existem várias seções EXIF, Corrigido um erro de Não convertendo ASCII SIFT para formato binário, corrigiu um erro de não desistir do loop ao reconstruir vários modelos 3D e procurar mais, atualizar O diálogo de direitos autorais e declaração de direitos autorais. V0.5.16 Modo de seqüência adicionado para correspondência de imagem em pares Em vez de todos os pares, esse modo corresponde apenas a dois quadros dentro de um intervalo especificado. Menu: quotsfm-gtPairwise matching-gtCompute Sequence Matchquot Para linha de comando: use quotVisualSFM sfmpairs intervalo de saída de entrada, onde o intervalo é um número Adicionado Geo-referência baseada em GPS usando o RANSAC, Menu: quotsfm-gtMore Funções-TransformTot baseado em gtGPS. Clique no item Menu para ver mais instruções. Suporta GPS em JPEG EXIF ou um arquivo de GPS especificado Use Ctrl quotGPS-Based Transformquot para selecionar um nome de arquivo de entrada de arquivo de GPS lat lng ltoptional altgt Parâmetro paramgpsvariance amp paramgpsignoreexifaltitude Atualizado Interface de Transformação Manual Agora elege um ponto de cada vez em vez de dois. Com este modo, as coordenadas dos pontos 3D são mostradas na barra de status Mostra a coordenada do ponto 3D na barra de status quando CTRL (alterado para C em V0.5.17) é pressionado Movido quotWatch atual Função Pathquot para a barra de status linha de comando quotwatchquot V0.5.15 Corrigido um vazamento de memória Introduzido em V0.5.13 V0.5.14 Adicionado mutex leve para a estabilidade da visualização Suporte adicionado de calibração fixa para o modo de linha de comando adicionar kfx, cx, fy, cy to sfmoption A seleção de pontos adicionados no modo de nuvem pontual densa permite uma localização mais fina para a transformação do modelo 3D Corrigido um erro na calibração fixa (introduzido no V0.5.13) Corrigido um erro na geração de trilha Melhoria da eficiência algorítmica. Atualização SiftGPU: SiftGPU emitiu um bugfix na correspondência baseada em CUDA, mas não é necessário atualizar se estiver usando o SiftGPU baseado em GLSL. V0.5.13 Otimização de memória para grandes conjuntos de dados (por exemplo, 500 imagens ou mais) Correção de bugs no gerenciamento de caminho relativo ao executar o PMVS da linha de comando Correção de erros para chamar XInitThreads muito tarde no Mac OSX Solução de erros para detectar incorretamente o VNC sem conectar um monitor físico como remoto Desktop Agora, respeitando o parâmetro de seleção do dispositivo em nv. ini Modifique paramusesiftmatchgpu e paramusesiftgpu Isso permite selecionar a CPU ao executar a partir do console. Mudança de alinhamento de janela menor para executar através do Xming. V0.5.12, Suporte parcial de calibração, quotSfM-gtMais funções-gtSet Fixed Calibrationquot Por enquanto, uma única calibraçãofx, cx, fy, cy é suportada Sem suporte radial de distorção, portanto, você deve inalterar as imagens Transformação manual de modelos 3D, quotSfm - GtMais Funções - Transformbot baseado em GtGCP Permite transformar manualmente o sistema de coordenadas Corrigido um erro de bloqueio morto relacionado ao GTK para Linux Removido as funções de mesclagem do modelo 3D Mais limpeza de código e substituição de função (P3P, 5 ponto.) Pequenas melhorias de UI do Linux V0. 5.11, correspondência de par correspondente quotSfM - gt Pairwise Matching - gt Compute Specified Matchquot, permite que você especifique uma lista de pares para calcular as correspondências Em comparação, quotCompute Missing Matchquot calcula todos os pares de imagens Isso é útil para corresponder as sequências de vídeo Os recursos personalizados combinam com quotSfM - gt Matchwise Matching - gt Import Feature Matchesquot, você pode calcular as combinações de recursos usando seus próprios métodos e o VisualSFM terminará a verificação geométrica Para esses pares Apresentou a correspondência personalizada para a interface de linha de comando (paresimport) Corrigido um erro de deadlock do Linux que acontece quando o tamanho do trabalho é muito pequeno V0.5.10, Corrigido um erro de inicialização quando todas as correspondências são muito boas. Mude o tamanho da exibição do ponto usando quotAlt Mouse wheelquot Showhide cameras no modo Dense cloud point pressionando quotFquot Showhide eixo plano no modo DenseSparse point cloud pressionando quotAquot Ajuste automático da orientação após a reconstrução. (Use quota quota para corrigir resultados antigos) Algumas outras melhorias de visualização. V0.5.9, expõe a maioria dos parâmetros CMVSgenOptionPMVS (Modificar parampmvs nv. ini) Re-implementou o menu owner-draw win32 para remover algum código externo. Mais limpeza para remover o código de alguns projetos anteriores V0.5.8, Implementação de captura de tela de alta resolução (Clique em SHIFT ao usar quotSave Current Viewquot) Imagine a visualização atual de zoom, mas ainda obtém todos os detalhes O fator de zoom é 4x por padrão Alterar através do comando rápido Quotczoom factorquot A dimensão da imagem pode ser ampliada até 25k. Talvez seja necessário alterar manualmente o tamanho do ponto com quotpsz sizequot ao renderizar pontos esparsos. Melhorias na linha de comando. (Use o VisualSFM para verificar mais detalhes) Visualização em 3 modos de reconstrução esparsa: câmeraspotasparascameras. Use T para alternar Modificou o citador para a função PMVSCMVSquot para ainda executar o CMVSgenOption, mas ignore o PMVS. Adicionou exportação de quotcameras. txtquot para conter todas as informações da câmera ao exportar dados para o PMVSCMVS V0.5.7, melhorando a escrita do NFS usando ordens assíncronas reordenadas. (Set paramasynchrouswrite 1) Melhorou a função de mesclagem do modelo 3D (SfM-gtMore Functions-gt InteractiveAutomatic Merge). Opção adicionada para escolher entre GLSL e CUDA para correspondência SIFT. (Requer o SiftGPU habilitado para CUDA) Corrigido um erro de não liberar dados de pixels após a não distribuição para o PMVS (Graças a Ferreira). Corrigido um erro de falha de segmentação quando executado em um terminal Linux não-X. Corrigido um erro de falha de segmentação ao reiniciar a correspondência inacabada. Corrigido um bug de quotRun CMVSPMVS que não funciona, o que provavelmente é apenas apresentado. V0.5.6, corrigiu um erro na pré-atribuição da memória GPU que pode interromper o SiftGPU. (Ocorre se a memória GPU lt 1GB) Interface adicionada para exportação CMVS sem executar CMVSPMVS. (Use by Ctrl quotRun CMVSPMVSquot) Interface de linha de comando alterada. (Quotsfmquot apenas reconstrução esparsa, quotsfmpmvsquot faz ambos) Corrigido um erro no gerenciamento de caminho relativo na interface de linha de comando. O manipulador de falhas de segmentação adicionado para liberar o arquivo de log antes de sair Mínior UI muda. V0.5.5, poupança NVM modificada para manter todas as extensões de arquivo de imagem (minúsculas quot. jpgquot foram omitidas anteriormente). Dicas de ferramentas de barra de ferramentas adicionadas para Linux UI Item de menu adicionado apontando para documentação on-line Corrigido um erro raro de UI do Windows que pode travar o programa ao clicar em Menubar Corrigido um pequeno erro ao não liberar dados de pixels depois de gerar miniaturas. V0.5.4, Limite o número de texturas em miniatura para salvar a memória gráfica do amplificador SiftGPU PBA Corrigido erro menor na limitação das imagens reutilizadas entre vários modelos. Adicionado Menuitem para exportar correspondências de imagens emparelhadas para um arquivo TXT Atualização de SiftGPU, 90311, Corrigido um erro SiftGPU ao lidar com a Capa de Memória (acontece na imagem de alta resolução, pequena memória GPU) V0.5.3, Interface de linha de comando aprimorada e CtrlC adicionada Manipulador. Removida filtragem desnecessária de pontos (desacelera quando um modelo é muito grande). V0.5.2, Problema de caixa de diálogo do Windows XP corrigido. Manipulação de GPS adicionada. Execute a correspondência de recursos de acordo com o GPS no EXIF. (Parâmetro em nv. ini) V0.5.1, Interface adicionada para executar o CMVSPMVS. Faça com um clique de botão (parâmetro em nv. ini) V0.5.0, erro de deadlock multi-thread fixo Linux
No comments:
Post a Comment