PT1769424E - Processamento de imagem e análise de dados de matriz - Google Patents

Processamento de imagem e análise de dados de matriz Download PDF

Info

Publication number
PT1769424E
PT1769424E PT05764118T PT05764118T PT1769424E PT 1769424 E PT1769424 E PT 1769424E PT 05764118 T PT05764118 T PT 05764118T PT 05764118 T PT05764118 T PT 05764118T PT 1769424 E PT1769424 E PT 1769424E
Authority
PT
Portugal
Prior art keywords
rows
groups
array
image
grid
Prior art date
Application number
PT05764118T
Other languages
English (en)
Inventor
Xia Xiongwu
Guan Yipping
Original Assignee
Bioarray Solutions Ltd
Xia Xiongwu
Guan Yiping
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Bioarray Solutions Ltd, Xia Xiongwu, Guan Yiping filed Critical Bioarray Solutions Ltd
Publication of PT1769424E publication Critical patent/PT1769424E/pt

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/24Aligning, centring, orientation detection or correction of the image
    • G06V10/243Aligning, centring, orientation detection or correction of the image by compensating for image skew or non-uniform image deformations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30004Biomedical image processing
    • G06T2207/30072Microarray; Biochip, DNA array; Well plate
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/04Recognition of patterns in DNA microarrays

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Investigating, Analyzing Materials By Fluorescence Or Luminescence (AREA)
  • Image Processing (AREA)

Description

1
DESCRIÇÃO "PROCESSAMENTO DE IMAGEM E ANÁLISE DE DADOS DE MATRIZ"
Antecedentes
Os recentes avanços rápidos na biologia molecular aumentaram a procura de testes de alto volume com base na necessidade de projetar livrarias compostas cada vez maiores, validar números cada vez maiores de criadores genéticos e testar populações de pacientes cada vez mais diversificadas. Isto tem levado ao desenvolvimento de novos formatos de matriz, sobretudo para análises da interação do ácido nucleico e proteína-proteína, o que permite o processamento paralelo através da realização de ensaios necessárias num formato "multiplexado".
Convencionalmente, estes ensaios são realizados produzindo matrizes de ácidos nucleicos e anticorpos através da "localização" ou "impressão" de soluções alíquotas em papel de filtro, papel mata-borrão ou outros substratos. No entanto, não obstante o seu frequente uso corrente na pesquisa académica para a análise da expressão do gene e perfil da proteína, as matrizes produzidas por localização têm desvantagens, sobretudo em aplicações que exigem uma elevada precisão e fiabilidade e pretendem fazer a análise de um grande volume de amostras a elevadas taxas de débito numa outra técnica mais recentemente desenvolvida, as matrizes de provas espacialmente codificadas são produzidas através de uma síntese de oligonucleótidos fotoquímicos no local. No entanto, esta tecnologia está limitada na prática à produção de pequenas 2 provas de oligonucleótidos - como resultado, são necessárias tecnologias alternativas para a produção de cDNA e matrizes de proteínas. Além disso, a síntese no local exclui a rápida adaptação da matriz de provas, tendo em conta o tempo e o custo envolvidos no necessário novo design do processo de síntese fotoquímico.
Para além destas dificuldades inerentes relacionadas com a performance do ensaio, as matrizes espacialmente codificadas produzidas por convencionais métodos de localização ou de síntese no local geralmente requerem instrumentos de digitalização ótica especializados para extrair dados de qualidade útil. Os sistemas comerciais disponíveis para este propósito baseiam-se na digitalização laser com o mesmo foco - um processo lento - mesmo à resolução espacial tipicamente modesta de -5 pm - que tem de ser repetido para cada cor de sinal.
De modo a resolver muitos dos problemas associados a utilizações de diagnóstico e analíticas de "matrizes localizadas" de oligonucleótidos e proteínas (conforme esboçado em "Multianalyte Molecular Analysis Using Application Specific Random Particle Arrays," pedido de patente norte-americano n.° 10/204,799, arquivado a 8/23/2002; WO 01/98765), podem formar-se matrizes de oligonucleótidos ou matrizes de proteínas, apresentando estas partes de captura em micropartículas quimicamente codificadas ("contas") que são depois reunidas em matrizes planas compostas por esse tipo de portadores codificados atribuídos. Ver pedido de patente norte-americano n.° 10/271,602 "Multiplexed Analysis of Polymorphic Loci by Concurrent Interrogation and Enzyme-Mediated Detection," arquivado a 10/15/2002, e n.° 10/204,799 supra. 3
As matrizes de micropartícuias que apresentam oligonucleótidos ou proteínas de interesse podem ser reunidas por unidade eletrocinética controlada por luz (ver p. ex. patentes norte-americanas n.° 6,468,811; 6,514,771; 6,251,691) ou por um método de reunião de disposição direta (anteriormente descrito em "Arrays of Microparticles and Methods of Preparation Thereof," arquivado a 7/9/02; n.° 10/192,352).
Para realizar uma análise de ácido nucleico ou de proteínas, essas matrizes portadoras codificadas são colocadas em contacto com amostras antecipadas para conter polinucleótidos alvo ou ligantes de proteínas de interesse. A captura do alvo ou ligante para agentes de captura específicos apresentados em portadores de tipo correspondente conforme identificado por um código de cor produz uma assinatura ótica, como por exemplo um sinal de fluorescência, seja direta ou indiretamente através de uma decoração subsequente, de acordo com um dos vários métodos conhecidos. A identidade dos agentes de captura, incluindo provas ou recetores de proteína (aqui por vezes também coletivamente denominados "recetores"), que criam um sinal de ensaio positivo, pode ser determinado por portadores de descodificação dentro da matriz. Ver pedido de patente norte-americano "Multianalyte Molecular Analysis Using Application-Specific Random Particle Arrays" n.° 10/204,799.
Estas matrizes de micropartícuias ("conta") geralmente contêm um número de tipos espectralmente distinguíveis de contas dentro de uma área suficientemente pequena para ser vista por um microscópio ótico padrão. A pequena pegada e o contraste de sinal elevado permitem a formação de imagens 4 multicolor "instantânea" e direta ("snapshot") de toda a matriz sob um microscópio, prescindindo assim da necessidade de digitalização laser com o mesmo foco. A análise das imagens registadas dessas matrizes aleatoriamente codificadas envolve vários passos e questões, conforme descrito no pedido de patente norte-americano "ANALYSIS, SECURE ACCESS TO, AND TRANSMISSION OF ARRAY IMAGES" n.° 10/714,203. Para identificar recetores individuais que ganham pontos positivos (e negativos) num determinado ensaio, a imagem do ensaio que compreende um padrão de intensidades de sinal registado a partir de contas individuais dentro da matriz é comparada com uma imagem de descodificação tirada antes (ou depois) do ensaio. Conforme descrito em detalhe no n.° 10/714,203, este processo é realizado de um modo automático, construindo um mapa de descodificação com grupos ("clusters") de contas do mesmo tipo (que apresentam o mesmo tipo de recetor) . É aqui apresentado um processo rápido para construir o mapa de descodificação (também designado de "mapa cluster") que invoca um modelo adaptativo.
Além disso, Galinksy et al. Bioinformatics 19(14): 1832-1836 (2003) descreve imagens de taxa de expressão de poucos pontos, que são imagens em que nem todas as contas são fluorescentes. Neste tipo de situações, Galinsky sugere usar uma grelha modelo, em que a grelha é pré-construída/conhecida à priori e simplesmente apanhada. Além disso, Galinsky ensina que o algoritmo usado para indexar pontos organizados em grelhas hexagonais a partir da formação de imagens dos feixes de micro-matrizes de fibra ótica requer informação relacionada com a estrutura 5 geométrica da grelha hexagonal, tal como o número de camadas de fibras de núcleo único em cada mini-feixe e o número de camadas de mini-feixes no feixe de micro-matrizes . A determinação das intensidades das contas individuais na imagem do ensaio permite a guantificação de resultados, por exemplo, na análise da expressão do gene ou do biocriador de proteinas. Para determinar as intensidades do sinal de contas, a imagem é dividida em segmentos através da construção de uma grelha, de modo a que cada campo na grelha contenha no máximo uma conta - depois são registadas as intensidades do campo da grelha. Pelo facto de o passo de localização de grelhas ser realizado sobre uma imagem que está alinhada dentro do campo de visualização, um primeiro passo de processamento é o da rotação da imagem.
Enquanto o passo de localização de grelhas pode ser realizado sobre uma imagem de campo claro (conforme descrito no n.° 101714,203), é vantajoso eliminar o registo de uma imagem de campo claro, encontrando em vez disso a grelha diretamente para descodificar e ensaiar imagens, compreendendo tipicamente imagens de fluorescência. Além disso, a imagem de fluorescência normalmente tem um contraste substancialmente superior, ou seja, a proporção do sinal para com o fundo. No entanto, têm de ser superados vários problemas. Em primeiro lugar, as contas que apresentam recetores que não produzem um sinal de ensaio não serão visíveis na imagem de fluorescência, e isto leva geralmente à corrupção dos cantos das grelhas, afetando assim o passo da rotação da imagem que se baseia na determinação precisa da orientação da imagem original através da medição da orientação dos cantos. Em segundo 6 lugar, as fontes de sinal, tais como as contas fluorescentes podem ser aleatoriamente deslocadas do centro de cada campo de grelha, um facto que pode afetar a intensidade registada a partir do campo.
Sumário São apresentados métodos de automatização do processo de análise de modo a aumentar a confiança nos resultados da análise dos dados do ensaio registados em forma de imagens de matrizes de sinais, que representam a força das interações recetor-ligante; e mais especificamente, em que diferentes recetores são associados a diferentes micropart iculas codificadas ("contas")»· e os sinais das contas "positivas" representam a quantidade de ligante capturado pelos correspondentes recetores apresentados nessas contas. Aqui os métodos permitem: 1. 0 alinhamento da grelha através da localização dos cantos das grelhas numa destas imagens de fluorescência; 2. A segmentação através da localização da grelha numa imagem de fluorescência que contém fontes de sinais invisíveis aleatoriamente distribuídos ("escuro"); 3. A determinação da intensidade máxima num campo de grelhas, não obstante as deslocações laterais aleatórias das fontes de sinais no campo; e 4. 0 agrupamento automático das fontes de sinais do mesmo tipo, seguindo-se a transformação da imagem de fluorescência pelo uso de um modelo adaptativo. 7
Breve Descrição dos Desenhos A Fig. 1 é uma imagem de descodificação de uma matriz de fontes de sinais de contas. A Fig. 2 é uma imagem fluorescente de uma matriz de fontes de sinais de contas, por exemplo a que é ilustrada na Fig. 1, em que apenas certas contas são fluorescentes e, por conseguinte, visiveis. A Fig. 3A descreve uma matriz de contas com linhas horizontalmente alinhadas. A Fig. 3B descreve uma matriz de contas com colunas verticalmente alinhadas. A Fig. 3C descreve contas vizinhas ligadas num hexágono, a distância das contas, a distância das filas e as linhas das grelhas das filas e das colunas. A Fig. 4 descreve linhas limítrofes de filas numa grelha. A Fig. 5 mostra centros de contas separados em dois grupos, com um grupo que contém contas de filas de número ímpar, e o outro com contas de filas de número par. A Fig. 6A mostra a localização do canto da grelha com contas claras, e em que o pico do perfil de intensidade situa-se na posição do centro da conta. A Fig. 6B mostra que para as contas escuras, a posição da intensidade do pico situa-se entre as contas. A Fig. 6C mostra a localização do canto da grelha, usando uma conta escura. A Fig. 7 mostra a verdadeira posição das contas dentro de uma janela e uma área limítrofe à volta. A Fig. 8 representa um mapa de descodificação bidimensional típico, recolhido usando canais de duas cores. A Fig. 9 mostra o resultado da conversão de imagem do mapa de contas na Fig. 8, quando usa uma resolução de 128 grelhas em ambas as dimensões. A Fig. 10 mostra que um mapa de contas pode ser incluído num perímetro. A Fig. 11A mostra o retângulo de delimitação para o mapa de contas modelo (que mostra o tipo e posição de agrupamento). A Fig. 11B mostra o retângulo de delimitação para o mapa de contas projetado (que mostra apenas os agrupamentos e não os seus tipos e posições). A Fig. 12 mostra os resultados depois de transformar o retângulo de delimitação para cada agrupamento num formato de imagem de um mapa de contas projetadas. A Fig. 13 esboça um ângulo de desalinhamento contra a ocupação fracionária para uma matriz de fontes de sinais de contas.
Descrição Detalhada I. Segmentação por localização de grelhas em imagens desalinhadas de matrizes de fontes de sinais discretos com fontes "escuras" aleatoriamente posicionadas.
Os métodos e algoritmos definidos abaixo destinam-se ao problema de segmentar uma imagem de uma matriz de fontes de sinais discretos que geralmente estão desalinhados e 9 serão compostos por fontes "claras" e "escuras" aleatoriamente interspersas.
Desalinhamento de imagem - Conforme ilustrado na Fig. 1, uma matriz dentro de um ensaio ou imagem de descodificação geralmente não fica perfeitamente alinhada com os eixos que definem o quadro da imagem. Em vez disso, a matriz pode ficar desalinhada por um ligeiro ângulo que tipicamente pode variar de 00 a aprox. 10°, desde que todos os quatro ângulos permaneçam dentro do quadro do campo. O ângulo entre o canto horizontal inferior da matriz e o canto horizontal do quadro está definido como ângulo de orientação da matriz. Para encontrar a grelha, é preciso encontrar primeiro o ângulo de orientação.
Fontes "escuras" aleatoriamente posicionadas - No processamento de imagens de sinais de matrizes, um passo critico é criar uma grelha com um número de campos, em que o campo contém uma fonte de sinal distinta. As imagens de fluorescência, como as que são apresentadas aqui nos exemplos, são registadas usando filtros de cor e geralmente têm um elevado contraste que excede significativamente o de uma "imagem de campo claro", que conforme descrito no n.° 10/714,203 (US 2004/101 191 Al), é usada para descodificar.
No entanto, o problema em desenhar uma grelha com campos à volta de sinais individuais numa matriz de fontes de sinais é que, de um modo geral, nem todas as fontes de sinais estarão "ligadas" quando a grelha está a ser desenhada. Por exemplo, onde os sinais são sinais de fluorescência a indicar uma classificação de ensaio positiva (isto é, uma interação de ligante recetor), e as fontes de sinais são contas distintas numa matriz dessas contas, somente as contas com classificação positiva serão 10 visíveis, enquanto que as restantes que estão aleatoriamente distribuídas por toda a matriz, serão invisíveis (ver Fig. 2). Passamos a apresentar um método e algoritmo para tratar este problema. 1.1 Segmentação de imagens de matrizes de fonte da configuração hexagonal — Certas incorporações de matrizes codificadas usam um conjunto de armadilhas mecânicas para delimitar as contas individuais. Neste tipo de incorporações, um layout de contas hexagonal (Fig. 3C) providencia uma maior densidade de acondicionamento do que um layout quadrado e, por isso, é preferido. Numa grelha com simetria hexagonal, todas as distâncias vizinhas mais próximas são idênticas (ver Fig. 3C).
Se uma matriz com linhas horizontais estiver alinhada com precisão relativamente ao eixo horizontal do quadro (isto é, com um ângulo de alinhamento de 0o, como na Fig. 3C), então as linhas que formam o hexágono são orientadas a 0o, 60° e 120°, respetivamente no que diz respeito à horizontal. Se a matriz estiver desalinhada por um ângulo finito relativamente à horizontal, as linhas do hexágono são desviadas em 0o, 60° e 120° do ângulo da matriz de desvio. Pode-se assim encontrar a orientação da matriz, encontrando o ângulo de desvio do hexágono. O perímetro do hexágono pode ser encontrado, ligando os centros das contas apropriadas aos seus vizinhos, como se pode ver na Fig. 3C. Foi desenvolvida uma função de separação para separar todos os ângulos de linhas hexagonais em três grupos esperados. 1.2 Algoritmo para formar uma grelha numa imagem de fluorescência de fontes de sinais que contém fontes escuras" aleatoriamente posicionadas 11
Os passos principais para encontrar uma grelha numa imagem de uma matriz de fontes de sinais de fluorescência são os seguintes: 1. Processar a imagem antes de encontrar as linhas hexagonais; 2. Numa imagem processada, encontrar os centros das contas, construir linhas hexagonais, linhas hexagonais de separação e encontrar um ângulo de orientação; 3. Encontrar limites da fila; 4. Encontrar limites da coluna; 5. Transformar toda a matriz num alinhamento com guadro de imagem (ângulo de orientação zero); 6. Encontrar linhas de grelhas de fila na matriz transformada; e 7. Encontrar linhas de grelhas de coluna na matriz transformada.
Passamos a descrever como realizar cada um destes passos.
Processar a imagem antes de encontrar linhas hexagonais
Os objetivos do processamento de imagem são: • Reduzir o ruido e sinais positivos falsos na imagem; • Posicionar tantas fontes de sinais quanto possível na imagem. 12
Os passos que se seguem são usados para processar uma imagem de fluorescência:
Reduzir as fontes de ruido, manchando a imagem; Encontrar os cantos da imagem;
Diminuir os cantos por erosão;
Aumentar os cantos; e
Converter a imagem numa imagem binária (isto é, cada posição da fonte de sinais está "ligada" ou "desligada').
Encontrar a orientação da matriz
Os parâmetros de entrada para encontrar o ângulo de orientação da matriz são: A própria imagem binária; 0 tamanho (da conta) da fonte do sinal;
Distância entre duas contas vizinhas ou Distâncias de Contas;
Distância entre filas ou Distância de Filas. isto é
Uma matriz pode ser posicionada numa grelha, usando um conjunto de linhas ao longo da direção da fila e dois conjuntos de linhas ao longo da direção da coluna (para contabilizar as contas que estão desviadas das linhas). Dado as pequenas variações no fabrico de chips e formação de imagens de matriz, as distâncias atuais entre contas e as distâncias entre linhas de contas geralmente variam ligeiramente, isto é, não se pode simplesmente inserir 13 linhas de grelhas usando dimensões de "design" e estas linhas têm de ser construídas explicitamente a partir da própria imagem.
Usando a imagem binária, procuram-se os sinais positivos e depois determina-se se uma "mancha" que representa uma fonte de sinal (como uma conta). Uma mancha é designada como uma fonte se as suas dimensões, tanto na direção x como na direção y, forem próximas às dimensões esperadas da conta. Quando se encontra uma conta, a posição do seu centro é determinada e guardada numa lista. Conforme descrito aqui mais abaixo, as posições centrais podem ser refinadas conforme necessário, de modo a melhorar a precisão do valor da intensidade registado a partir do
campo da grelha que contém qualquer conta definida. A partir da lista das posições centrais da conta, cria-se uma lista de todas as linhas hexagonais na imagem através da análise da relação entre cada conta e as existentes linhas hexagonais.
Existem quatro tipos de relações possíveis entre as contas e as linhas hexagonais: 1. Uma conta está fora da Distância de Contas de qualquer conta incluída em qualquer hexágono existente.
Resultado: a posição da conta está guardada para incluir num potencial hexágono por determinar. Para facilitar a implementação, pode-se tratar esta conta como um hexágono especial, que tem uma conta. 2. Duas contas são vizinhas e a distância entre elas é próxima à Distância de Contas. 14 14 Resultado: Ξ seus centros 3. Uma conta uma conta na linha. Resultado: A é adicionada Fig. 3E). desenhada uma linha de hexágono entre os (conforme apresentado na Fig. 3D). está numa linha hexagonal e é vizinha de mesma linha, mas a uma parte distai dessa linha hexagonal está estendida e a conta no fim da linha (conforme apresentado na 4. Uma conta não é uma linha hexagonal, mas é vizinha de uma ou duas contas que estão numa linha hexagonal. Resultado: São adicionadas novas linhas, que ligam a conta, e as novas linhas são também adicionadas à lista de linhas hexagonais (conforme apresentado na Fig. 3F). O algoritmo para construir as linhas hexagonais é delineado abaixo.
Para cada centro de conta
Obter uma linha a partir da lista de linhas hexagonais existentes {
Verificar a relação da conta atual com esta linha hexagonal. Se a relação for uma de 2 a 4 das listadas acima
Atualizar esta linha hexagonal.
Atualizar a lista de linhas hexagonais. (
Se a relação for "1" do exposto acima, então guarda esta conta como uma linha hexagonal que consiste de uma conta. } } 15
Depois de construir todas as linhas hexagonais, elas são separadas em grupos de acordo com o ângulo de desalinhamento, ou seja, o ângulo da horizontal (e/ou da vertical) que usa uma variação presente de cada grupo (corresponde a uma variação aceitável na orientação da matriz) de +/- 15°. Deve haver pelo menos três grupos de linhas. Isto é assim porque, se estiverem incluídas todas as linhas hexagonais, as linhas dentro de cada grupo podem ser orientadas, respetivamente, a ou próximo de 0o, 60° e 120°. A partir dos ângulos de orientação maus do conjunto de linhas em cada um dos três grupos, pode-se determinar os desvios de 0o, 60° e 120°, respetivamente, e a partir daqui, por sua vez, alinhar a matriz. Para melhorar a eficiência e a precisão, o algoritmo faz com que quaisquer duas linhas hexagonais, que se situem ao longo da mesma linha, sejam ligadas e unidas numa linha mais comprida. A função de separação desenvolvida como parte deste algoritmo pega num conjunto de dados (os pontos que perfazem uma linha) e é determinada uma variação predefinida para cada grupo, e o desvio no alinhamento de qualquer linha da média tem de se encontrar dentro da variação no limite, para essa linha poder ser incluída no grupo apropriado. Abaixo existe uma descrição de pseudocódigo desta função.
Para todos os dados no conjunto de dados de entrada
Obter um grupo a partir do conjunto de grupos existente {
Obter distância de dados atuais a partir da média do grupo atual. Se a distância for inferior ao tamanho de variação padrão, 16
Adicionar os dados atuais no grupo; e atualizar a média desse grupo.
De outro modo, tentar o próximo grupo. }
Se os dados atuais não se adequarem a nenhum grupo, criar um novo grupo com dados atuais (
Depois de classificar grupos com base no seu tamanho, os primeiros três grupos (maiores) são chamados de grupos de linha maior. De entre estes três grupos de linhas maiores, deve-se encontrar um grupo de linhas próximo de 90° ou próximo de 0o. Esse grupo é chamado de grupo de filas. O tipo de grupos de filas determina se a matriz possui linhas verticais de contas ou linhas horizontais de contas (ver Fig. 3A e 3B) . Se um grupo de filas estiver próximo de 00, a matriz possui linhas ou filas horizontais; se um grupo de filas estiver próximo de 90°, a matriz possui linhas verticais, também designadas de filas verticais. O desvio de um grupo de filas de 90° ou de 0o é o ângulo de alinhamento da matriz.
Robustez do algoritmo de localização de grelhas A ocupação de contas numa imagem fluorescente pode variar, e se a ocupação for demasiado baixa pode ser difícil construir a grelha. Pode-se simular o efeito de reduzir a ocupação, iniciando com uma imagem com suficiente ocupação de contas para conduzir um cálculo de orientação. A simulação expulsa depois as contas sequencialmente de um modo aleatório e volta a calcular a orientação. O ângulo de orientação é usado para determinar a robustez do algoritmo, uma vez que é um passo crítico no algoritmo. 17
Conforme ilustrado na Fig. 13, a robustez do algoritmo depende do número de contas brilhantes numa imagem fluorescente. 0 eixo X da Fig. 13 representa a ocupação fracionária e o eixo Y representa o ângulo de desalinhamento. Uma imagem tem no máximo 4012 contas. A começar com cerca de 3000 contas, o desalinhamento é muito pequeno. Como o número de contas continua a diminuir, o desalinhamento mantém-se estável até a ocupação cair para aproximadamente 700/4012, ponto no qual o algoritmo falha. Uma vez que o algoritmo procura os vizinhos mais próximos de contas para formar linhas hexagonais, a determinação do ângulo de orientação vai depender das linhas hexagonais. Uma conta tem no máximo 6 vizinhos. Na teoria, se faltarem todos os 6 vizinhos e permanecer um sexto das contas, o algoritmo não será capaz de criar uma linha hexagonal. Numa imagem existem no máximo 4012 contas e um sexto das contas é cerca de 700. Por conseguinte, a experiência concorda com a previsão teórica.
Por razões de segurança e precisão, deve haver pelo menos 1000 contas para a segmentação bem-sucedida de uma grelha quando usa uma imagem fluorescente. Por outras palavras, a ocupação da imagem deve ser de pelo menos 25% para o algoritmo funcionar. O facto de requerer 25% da ocupação demonstra que o método aqui apresentado é mesmo robusto.
Encontrar limites da fila
Para melhorar a precisão do processo de localizar limites de matriz, o método apresentado invoca aqui uma caixa de delimitação à volta de uma matriz e depois volta a 18 calcular o seu ângulo de orientação e encontra o centro da matriz.
Na localização da caixa, procura-se primeiramente as primeiras e últimas filas na matriz. Os passos para as encontrar são: 1. Projetar todos os centros de contas ao longo da direção das filas;
Para cada centro de contas (x, y), calcular a sua posição projetada (x, y), que é a posição na matriz quando está no seu ângulo de orientação. { X projetado = x + y * tan (ângulo de orientação); Y projetado = y - x * tan (ângulo de orientação); }
Resultados de separação de todas as posições projetadas (X, Y) em grupos de dados;
Se as filas são verticais, separa todos os valores x projetados em grupos. Se as filas são horizontais, separa todos os valores y projetados em grupos. Cada grupo tem um tamanho de variação de +/- (distância de fila projetada/3), em que a distância da fila projetada = Distância da fila/cos (ângulo de orientação).
Classifica grupos de dados separados e encontra dois grupos limítrofes;
As condições para cada grupo limítrofe são: (i) 0 grupo está numa extremidade e tem pelo menos 4 centros de contas; (ii) A sua distância ao grupo que se segue fica próxima da Distância da fila projetada. 19
Estas duas condições evitam que se selecione, por engano, grupos de ruído como grupos limítrofes.
Verifica-se depois o resto dos grupos em filas projetadas entre os dois grupos limítrofes e retêm-se grupos, cuja distância aos seus vizinhos é próxima à Distância de Filas.
Para ilustrar os passos acima mencionados, na Fig. 4 é apresentada uma matriz como exemplo. Esta matriz tem 17 filas e 11 colunas. Os pontos escuros simbolizam grupos separados de centros projetados. Depois de encontrar a primeira fila e a última fila, pode-se desenhar as duas linhas limítrofes de filas, que são ilustradas nos perímetros inferior e superior na Fig. 4.
Encontrar limites da coluna
Depois de encontrar limites de filas, pode-se separar centros de contas em dois grupos. Um grupo contém contas de filas de número ímpar contadas por ordem ascendente de posições de filas, cobertas por linhas tracejadas na Fig. 5, e o outro grupo contém contas de filas de número par, cobertas por linhas pontilhadas na Fig. 5. Para ambos os grupos de centros de contas, realizam-se os seguintes passos: 1) Projetar centros ao longo da direção perpendicular de filas; 2) Recolher todos os valores X de centros projetados se as filas forem horizontais, ou recolher todos os 20 valores Y de centros projetados se as filas forem verticais; e 3) Separar valores recolhidos em grupos. Cada grupo tem um tamanho de variação de +/- (distância de conta projetada/3) , em que a distância da conta projetada = Distância da conta/cos (ângulo de orientação). 4) Classificar grupos separados, encontrar dois grupos limítrofes.
As condições para um grupo limítrofe são: (i) 0 grupo é um grupo extremo e tem pelo menos 3 centros de contas; (ii) A sua distância ao grupo que se segue fica próxima da Distância da conta projetada. 5) Verificar os restantes grupos entre os dois grupos limítrofes. Grupos retidos cuja distância aos seus vizinhos fica próxima da Distância da Conta;
Depois do processo, tem-se 4 grupos limítrofes, cada um perpendicular à direção das filas. Dentro desses 4 grupos limítrofes, retém-se os dois grupos que são limites de coluna para todas as colunas, conforme ilustrado pelas duas linhas verticais no perímetro na Fig. 5.
Transformar a orientação da matriz num alinhamento com quadro exterior O próximo passo é transformar a matriz, de modo a que o ângulo de orientação seja 0o em relação à horizontal. Começa-se por compor um retângulo à volta da imagem com 21 dois limites de filas e dois limites de colunas. Considerando o ângulo de orientação (calculado acima) e o centro do retângulo limítrofe (que é determinado), cria-se uma matriz de transformação para rodar a imagem fluorescente na quantidade desejada.
Encontrar linhas de grelhas de fila na matriz transformada
Para encontrar linhas de grelhas que representam os limites dos campos entre contas, usam-se os centros de contas determinados em passos anteriores. Mas primeiro, transformam-se todos os centros de contas dentro do retângulo limítrofe através da mesma transformação usada para rodar a matriz, para colocá-las onde quiser.
Usando centros de contas transformados, realizam-se passos idênticos aos usados aos para encontrar limites da matriz antes da transformação. Os passos são: 1. Se as filas da matriz forem verticais, recolher todos os valores no eixo X dos centros de contas transformados num conjunto designado de Posições de Filas. Se as filas da matriz forem horizontais, recolher todos os valores no eixo Y dos centros de contas transformados num conjunto designado de Posições de Filas. 2. Separar todos os dados no conjunto de Posições de Filas em grupos. Cada grupo tem um tamanho de variação de +/- (Distância da Fila/3); 3. Classificar todos os grupos por ordem ascendente de médias de grupos. Remover grupos onde as distâncias 22 para com os grupos vizinhos não é suficientemente próxima da Distância da Fila. Esses grupos removidos podem ser "falsos positivos" do ruido ou podem ser contas "flutuantes" (não afixados ao substrato, sobre o qual a matriz é formada); 4. Verificar se existem intervalos grandes entre os grupos. Em caso afirmativo, introduz-se um número apropriado de grupos para encher efetivamente o intervalo; 5. As médias de grupos separados são as posições de todas as filas. Para cada duas filas, nós calculamos a posição média como uma posição de linha de grelha entre elas. Deste modo, obtém-se uma lista de linhas de grelhas com as suas posições por uma ordem classificada; e 6. Estende-se a lista de linhas de grelhas, adicionando duas linhas em ambas as extremidades de cada linha na lista, a uma Distância da Fila para a primeira e a última linha da grelha, respetivamente.
Encontrar linhas de grelhas de coluna na matriz transformada
Depois de encontrar todas as posições da fila e as suas linhas de grelhas, encontram-se dois conjuntos de linhas de grelhas de colunas. Começa-se por separar os centros de contas transformadas em dois grupos. Um grupo contém todas as contas das filas de número impar, contadas por ordem ascendente de posições de filas, enquanto os outros grupos contêm todas as contas de filas de número par. 23
Para cada grupo, aplicam-se passos idênticos aos para encontrar linhas de grelhas para filas, mas com dados que representam diferentes dimensões e distâncias entre colunas. No fim do processo, tem-se um conjunto de linhas de grelhas de filas e dois conjuntos de linhas de grelhas de colunas (os dois conjuntos de linhas são desviados um do outro por metade da largura da grelha devido a um layout escalonado das colunas (como se pode ver na Fig. 3C)).
Assim que ficar estabelecida a grelha para uma imagem fluorescente, deve ser alinhada com as imagens fluorescentes de outros canais de cor para evitar ter de estabelecer de novo uma grelha para cada imagem fluorescente. II Alinhamento de imagem, usando cantos; alinhar outras grelhas depois
As imagens fluorescentes residem frequentemente em vários canais de cor. Por exemplo, uma matriz num substrato único pode incluir imagens verdes, cor-de-laranja e UV fluorescentes. Devido às variações óticas, existem desvios nas imagens fluorescentes entre diferentes canais de cor. Os desvios nas imagens são nas direções x, y e são os desvios que não aparecem quando as imagens são rodadas. As imagens podem ser alinhadas umas com as outras para eliminar estes desvios. 0 algoritmo abaixo pode ser usado para encontrar a grelha para uma imagem fluorescente, e usar a informação da grelha para alinhar com as outras imagens fluorescentes. 0 algoritmo convencional utilizado na localização da grelha de uma imagem fluorescente baseia-se em encontrar o perfil de intensidade para uma matriz de imagens fluorescentes. Conforme anotado acima e ilustrado na Fig. 6A até 6C, não funciona bem para as imagens com muitas fontes de sinais escuros nos cantos, como se pode ver na Fig. 6C. Como ilustrado na Figura 6A, o pico do perfil da intensidade está na posição do centro da conta, para contas fluorescentes conforme apresentado na Fig. 6A. Mas a posição da intensidade do pico para contas escuras está entre as contas, para as contas escuras é conforme apresentado nas Figuras 6B e 6C. Se muitas contas na matriz não estiverem iluminadas, os picos de intensidade não podem ser encontrados, e o perfil do pico de intensidade nem sempre corresponderá às posições do centro das contas fluorescentes, causando falha no alinhamento. 0 perfil de canto da matriz é determinado pela análise da diferença entre pixéis perto dos cantos da matriz (o sinal de cada conta é feito de vários pixéis) . Quer sejam vistas contas escuras ou contas iluminadas, existe sempre um pico no canto (ver as Figuras 6A a 6C) . A utilização deste pico para alinhamento permite eliminar o efeito das contas escuras no alinhamento. 0 pseudocódigo para o algoritmo de alinhamento é o seguinte:
EncontrarCorGrelha (Corlmagem, Grelha, RodarÂngulo) /** Encontrar grelha e rotação de imagem de fluorescência **/ PARA (cada imagem de fluorescência a ser processada) {
CarregarImagem (Imagem);
RodarImagem(Imagem, RodarÂngulo); /** rodar a imagem para obter uma configuração horizontal e vertical **/
CriarCanto (Imagem, CantoPerfil); 25
AlinharImagem(CantoPerfil, Grelha); /** alinhar perfil de canto com a imagem da grelha •k •k I }
Assim que a grelha for encontrada e as imagens de fluorescência tiverem sido alinhadas, pode-se extrair os valores de intensidade dos diferentes canais de cor para formar uma trama de dispersão multidimensional de intensidades de fontes de sinal recolhidas de dois ou mais canais de cor. A trama de dispersão é convertida num mapa de fontes de sinais, como por exemplo um mapa de descodificação, através de um algoritmo de agrupamento automático abaixo descrito. III. Corrigir desvios na posição da conta a partir do centro de vim campo de grelhas, examinando a região onde a intensidade é mais alta
Uma fonte de sinais (p. ex. uma conta), quando é inferior ao campo de grelhas, pode ser deslocada do centro do campo. Este tipo de desvios laterais aleatórios na posição da conta dentro dos campos de grelhas podem ser corrigidos para melhorar a precisão da análise.
Pode ver-se a distribuição da intensidade ao longo de uma única fonte como uma conta dentro de um certo campo de grelhas através de uma janela ("máscara") que é colocada em cada campo de grelhas, sendo a máscara geralmente escolhida mais pequena do que o campo de grelhas. Se a conta não estiver localizada no centro do campo de grelhas, a visualização da intensidade pela janela vai reduzir a intensidade média calculada a partir do conjunto de 26 leituras de intensidade discreta para cada pixel de máscara. Como resultado, a imagem de ensaio ou de descodificação e os correspondentes mapas de fontes vão apresentar regiões de reduções "falsas" na intensidade. 0 campo de grelhas com uma janela é ilustrado na Fig. 7, onde o quadrado grande definido em parte por linhas pontilhadas indica um campo de grelhas, e a janela é definida dentro do campo de grelhas. A janela é do tamanho da conta e move-se à volta do campo de grelhas para várias posições. Na Fig. 7, a janela é desenhada na posição 0 e posição N. A intensidade média de todos os pixéis dentro da janela é calculada em cada posição. Como se pode ver na Fig. 7, quando a janela está acima da posição real da conta, isto providencia o sinal de intensidade máxima.
Repare que a região limítrofe do campo de grelhas na Fig. 7 não está incluída nas posições de pesquisa para a janela, uma vez que a região limítrofe pode ter ruído excessivo causado pelas contas vizinhas. Excluir a examinação da região limítrofe torna o algoritmo mais robusto.
Existe outra pré-condição na utilização da janela. Se a intensidade da conta num campo de contas for fraca, a intensidade média no centro do campo de grelhas será usada como a intensidade atual. A razão para este ajuste é o facto de as contas fracas serem sujeitas à interferência do ruído, especialmente perto dos limites do campo de grelhas, e a região do centro de um campo de grelhas proporciona mais resultados consistentes.
Uma conta é determinada como sendo fraca se a sua intensidade estiver abaixo de um limite dinâmico. A intensidade de fundo do chip é primeiramente calculada pela 27 medição da intensidade média na região fora da matriz de contas. Se a intensidade da conta for determinada inferior à intensidade de fundo por uma percentagem especificada, a conta será tratada como uma conta fraca e a sua intensidade será apenas medida no centro do campo de grelhas.
ObterlntensidadeDeFundo(IntensidadeB); PARA(cada célula de grelha em imagem fluorescente) {
AvaliarlntensidadeCélulaGrelha(IntensidadeO) ; SE (IntensidadeO > IntensidadeB * 1.2) { /** mover caixa à volta da célula de grelha e encontrar a intensidade. Reparar que 2 é a margem **/ PARA(I=2; I<LarguraGrelha-2; I++) { PARA(J=2; J<ProfundidadeGrelha-2; J++) {
ObterCaixaArealntensidade(I, J, Caixalntensidade(I, J)) ; } } /** a intensidade máxima é a intensidade da célula da grelha **/ EncontrarMáxCaixaÁrealntensidade(Caixalntensidade(I, J) ) ;
OU { /** Usar a intensidade da caixa central para a grelha fraca **/ ObterlntensidadeCaixaCentral(); } IV. Agrupamento de divisores de água automático a seguir a um formato de imagem 28
Um passo crítico na descodificação de um mapa de fontes de sinais na forma de uma imagem de ensaio é a construção de um mapa de descodificação através do agrupamento de contas de tipo idêntico. Um mapa de descodificação (também mapa de agrupamento ou mapa de contas) é uma representação multidimensional de grupos de intensidades que representam o nível de várias tintas de codificação dentro de cada conta; estas intensidades são registadas em dois ou mais canais. A Fig. 8 é um mapa de descodificação bidimensional típico, recolhido usando canais de duas cores.
Considerando uma trama de dispersão de pontos, cada um desses pontos representa uma intensidade de codificação, uma operação de agrupamento agrupa pontos localizados perto uns dos outros dentro da trama de dispersão, em agrupamentos aos quais são atribuídos uma etiqueta numerada. Um mapa de descodificação contém, por isso, para cada agrupamento, uma posição (p. ex. a do id do centro) e uma etiqueta.
Para conseguir uma elevada produtividade no passo de descodificação, o agrupamento automático é essencial. No agrupamento automático começa-se com um mapa de descodificação convencional e daí, cria-se um modelo de mapa de descodificação de projetos, que agrupa nas mesmas posições que o mapa original, mas sem etiquetar os grupos.
Converter vim mapa de descodificação num formato de imagem para um agrupamento automático 29
No agrupamento automático, começa-se com um mapa de descodificação, convertendo-o num formato de imagem, e aplica-se um algoritmo de divisão de água a essa imagem para agrupar contas por intensidades de codificação cada vez mais altas dentro da imagem. Dentro do formato de imagem, também se pode aplicar o processamento de imagem ou métodos de filtragem, por exemplo para remover pontos na trama de dispersão que são considerados "de fora." Os passos no processo de conversão são: 1. Desenhar linhas de grelhas ao longo de ambas as dimensões do mapa de contas da trama de dispersão na resolução desejada (na Fig. 8 foram usadas 128 linhas em ambas as dimensões); 2. Para cada campo de grelhas, calcular o número de pontos (isto é, fontes de sinal incluindo contas) a partir do mapa de contas da trama de dispersão que vai nesse campo de grelhas; e 3. Tratar cada campo de grelhas como um pixel e o número de pontos dentro dessa célula como valor pixel. A Fig. 9 mostra o resultado da conversão de imagem do mapa de contas na Fig. 8, usando uma resolução de 128 grelhas em ambas as dimensões. As grelhas de cor mais clara indicam menos pontos, enquanto as grelhas de cor mais escura indicam mais pontos.
Algoritmo divisor de água: aos agrupamentos é atribuído vim número para se conhecer a sua localização 30 O método divisor de água para encontrar a intensidade numa imagem é bem conhecido num processamento de imagem e é descrito em, p. ex., "Digital Image Processing," K. R.
Castleman, Prentice hall press. E utilizado para encontrar níveis de intensidade, tratando segmentos de diferentes níveis de intensidade de uma imagem como bacias de diferentes profundidades. Depois simula a queda de chuva nessas bacias até todas as bacias estarem cheias. Os resultados do método divisor de água são afetados primeiramente pela posição inicial em cada segmento, antes de simular a queda de chuva. Nesta aplicação, a posição inicial de um agrupamento deve ser junto ou próximo do centro e da posição mais densa desse agrupamento, de modo a evitar resultados errados. 1. Encontrar um retângulo de delimitação para o mapa de contas
Um mapa de contas pode ser incorporado num perímetro, p. ex., o retângulo de caixa apresentado na Fig. 10. Para incluir o mapa de contas da Fig. 10, encontra-se uma região que engloba todos os agrupamentos, que, neste exemplo, são agrupamentos com posições entre 2,50 ao longo do eixo X e 4,25 ao longo do eixo Y. Os agrupamentos abaixo de 2,50 são geralmente de buracos no substrato, sobre os quais a matriz é formada. O número de buracos pode variar muito e, por conseguinte, a região do mapa de contas abaixo de 2,5 não é estável e não está incluída no cálculo. Os passos para encontrar o perímetro de delimitação de um mapa de contas sao: 31 1. Converter a região do agrupamento do mapa de contas (de 2,50 na direção X para 4,25 na direção Y no mapa de contas da Fig. 10), numa imagem; 2. Aplicar uma técnica de filtragem suave para suavizar a imagem e remover algum ruido; que é um método de processamento de imagem bem conhecido e descrito em, p. ex., "Practical algorithms for image analysis," M. Seul, L. O'Gorman, M. J. Sammon; 3. Aplicar erosão, que é outro método de processamento de imagem bem conhecido e descrito em, p. ex., "Practical algorithms for image analysis," M. Seul, L. O'Gorman, M. J. Sammon, para remover cantos fracos à volta de cada agrupamento; 4. Encontrar extensão da posição em ambas as dimensões X e Y de todos os pixéis (onde o sinal de cada conta é dividido em vários pixéis) , cujo valor fica acima de um limite de 5; limite esse que é selecionado com base na experiência e testes; e 5. Fazer uma caixa retangular para cobrir a extensão da posição do pixel tanto na dimensão X como Y.
As Figuras 11A e 11B mostram os retângulos de delimitação para, respetivamente, o mapa de contas modelo (apresentando o tipo e a posição do agrupamento) e mapa de contas de projeto (apresentando apenas agrupamentos e não os seus tipos ou a sua posição). Os agrupamentos no mapa de contas de projeto terminam mais baixo. 2. Transformar um mapa de descodificação noutro: modelos adaptativos 32
Depois de encontrar retângulos de delimitação tanto para o mapa de contas modelo como para o mapa de contas de projeto, pode-se estabelecer uma transformação entre os dois retângulos de delimitação, de modo a poder transformar-se um ponto no mapa de contas modelo numa posição relativa no mapa de contas de projeto. Supõe-se aqui que se conhece o retângulo de delimitação para um mapa de contas modelo através do seu canto inferior esquerdo (TLBx, TLBy), a sua largura (ModeloW) e a sua altura (ModeloH) . E supõe-se aqui que se conhece também o retângulo de delimitação num mapa de contas de projeto através do seu canto inferior esquerdo (PLBx, PLBy), a sua largura (ProjetoW) e a sua altura (ProjetoH). Para transformar um ponto (x, y) em modelo numa posição (u, v) no mapa de contas de projeto, usa-se a seguinte fórmula:
u - PLBx + (x - TLBx) / Template W * Ptojeci W; v * PLBy 4- (y- TLBy) / TemplateH * ProjectlL
Pode-se também transformar um ponto (u, v) do mapa de contas de projeto numa posição (x, y) num modelo com a seguinte fórmula:
x “ TLBx + (u - PLBx) /ProjectW * TempiãteW; y — TLBy + (v - PLBy) /Projectlí * TempiaieK 3. Converter mapa de descodificação de projeto num formato de imagem 33
Depois de obter o mapa de contas de projeto, ele pode ser convertido num formato de imagem usando as mesmas técnicas acima descritas para converter um mapa de contas e num formato de imagem. 4. Transformar retângulo de delimitação de cada agrupamento
Aqui, cada agrupamento num mapa de contas modelo é considerado estar envolvido num perímetro (aqui, uma caixa retangular). Para definir um retângulo de delimitação do agrupamento, usa-se a extensão da posição dos pontos que formam o agrupamento. Para cada agrupamento num mapa de contas modelo, transforma-se o seu retângulo de delimitação num formato de imagem de um mapa de contas de projeto. A Fig. 12 mostra os resultados depois de transformar o retângulo de delimitação para cada agrupamento num formato de imagem de um mapa de contas de projeto. Pode ver-se que alguns retângulos de delimitação transformados cobrem secções de agrupamentos vizinhos. 5. Localizar ponto inicial para cada agrupamento
Para cada retângulo de delimitação transformado, converter a região interior num sinal binário, usando um limite de valores pixel médios nessa região. De seguida, encontrar a maior "mancha" de imagem na região binária. 0 centro da maior mancha é o ponto inicial para esse agrupamento. 34 6. Correr o algoritmo divisor de água
Aplicar o algoritmo divisor de água com o ponto inicial de cada agrupamento no formato de imagem para encontrar a intensidade do agrupamento. No fim deste processo, cada pixel pertence a um agrupamento especifico ou a nenhum agrupamento. 7. Converter resultados do formato de imagem de volta para o mapa de contas de projeto (atribuição de agrupamento de cada ponto no mapa de contas de projeto)
Para cada ponto do formato de imagem, é necessário encontrar o agrupamento ao qual pertence no mapa de contas do projeto. Para o fazer, procura-se saber a que pixel cada ponto pertence no formato de imagem. De seguida, copia-se a atribuição de agrupamento desse pixel a esse ponto no mapa de contas de projeto.
Note-se que os termos, expressões e exemplos aqui presentes são a titulo exemplificativo e nao são limitativos, e que a invenção é definida apenas nas reivindicações que se seguem, e inclui todos os equivalentes do objeto das reivindicações. Os passos do método nas reivindicações não estão necessariamente por ordem e, a não ser que esteja especificado na reivindicação, podem ser realizados por qualquer ordem, incluindo a especificada nas reivindicações. 35
REFERÊNCIAS CITADAS NA DESCRIÇÃO A presente listagem de referências citadas pela requerente é apresentada meramente por razões de conveniência para o leitor. Não faz parte da patente de invenção europeia. Embora se tenha tomado todo o cuidado durante a compilação das referências, não é possível excluir a existência de erros ou omissões, pelos quais o EPO não assume nenhuma responsabilidade.
Patentes de invenção citadas na descrição US 20479902 A [0004] WO 0198765 A [0004] US 27160202 A [0004] US 10204799 B [0004] [0006] US 6468811 B [0005] US 6514771 B [0005] US 6251691 B [0005] US 10192352 B [0005] US 10714203 B [0008] [0016] WO 101714203 A [0011] US 2004101191 A1 [0016]
Literatura não relacionada com patentes, citada na descrição • Galinksy et al. Bioinformatics, 2003, vol. 19 (14), · M. Seul; L. 0’Gorman ; M. J. Sammon. Practical 1832-1836 [0009] algorithms for image analysis [0063]

Claims (4)

1 REIVINDICAÇÕES 1. Um método para localizar uma grelha de uma imagem fluorescente de uma matriz de fontes de sinais, compreendendo: encontrar os centros da fonte do sinal; construir linhas, ligando fontes de sinais vizinhos em hexágonos; separar linhas hexagonais; encontrar um ângulo de orientação da matriz; encontrar limites de filas da matriz; encontrar limites de colunas da matriz; transformar toda a matriz num alinhamento com quadro de imagem, isto é, um ângulo de orientação zero; encontrar linhas de grelhas de fila na matriz transformada; e encontrar linhas de grelhas de coluna na matriz transformada; caracterizado pelo facto: se as filas da matriz forem verticais, reúne todas as coordenadas X dos centros de fontes de sinais transformados num conjunto de posições de filas; se as filas da matriz forem horizontais, reúne todas as coordenadas Y dos centros de fontes de sinais transformados num conjunto de posições de filas; separar o conjunto de posições de filas em grupos, em que grupos adjacentes se encontram dentro de uma primeira distância limite; 2 calcular e classificar grupos para médias de grupos; remover grupos em que a distância para um grupo vizinho está dentro de uma segunda distância limite; determinar se os intervalos entre grupos excedem a primeira distância limite, e, em caso afirmativo, inserir um número apropriado de grupos, de modo a que os grupos se encontrem dentro da primeira distância limite um do outro; determinar as respetivas posições relativas de filas baseadas na média das contas membro nas respetivas filas; criar um conjunto de linhas de grelhas, de modo a que as linhas de grelhas no conjunto fiquem a meio caminho entre filas adjacentes; e adicionar uma linha no topo paralelamente às linhas de grelhas e adjacente à primeira fila da matriz, e adicionar uma linha inferior paralelamente às linhas de grelhas e adjacente à última fila da matriz, encontrando-se essas linhas de topo e inferior a uma distância da respetiva linha de grelha mais próxima, que é a mesma da distância entre linhas de grelhas adjacentes.
2. 0 método da reivindicação 1, incluindo ainda a separação de fontes de sinais transformados em dois grupos, em que um dos grupos contém fontes de sinais de filas de número impar, enquanto o outro grupo contém fontes de sinais de filas de número par.
3. 0 método da reivindicação 2, incluindo ainda a localização de dois conjuntos de linhas de grelhas de 3 coluna, separando as fontes de sinais transformados em dois grupos, em que um conjunto contém fontes de sinais de filas de número ímpar, enquanto o outro conjunto contém fontes de sinais de filas de número par.
4. 0 método da reivindicação 1, em que as fontes de sinais individuais são contas fluorescentes.
PT05764118T 2004-07-16 2005-06-28 Processamento de imagem e análise de dados de matriz PT1769424E (pt)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/893,007 US7315637B2 (en) 2004-07-16 2004-07-16 Image processing and analysis of array data

Publications (1)

Publication Number Publication Date
PT1769424E true PT1769424E (pt) 2012-11-13

Family

ID=35599479

Family Applications (1)

Application Number Title Priority Date Filing Date
PT05764118T PT1769424E (pt) 2004-07-16 2005-06-28 Processamento de imagem e análise de dados de matriz

Country Status (6)

Country Link
US (3) US7315637B2 (pt)
EP (1) EP1769424B1 (pt)
CA (1) CA2573978C (pt)
ES (1) ES2394724T3 (pt)
PT (1) PT1769424E (pt)
WO (1) WO2006019533A2 (pt)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4874069B2 (ja) * 2006-11-27 2012-02-08 オリンパス株式会社 共焦点顕微鏡
US20100034444A1 (en) * 2008-08-07 2010-02-11 Helicos Biosciences Corporation Image analysis
US9523701B2 (en) 2009-07-29 2016-12-20 Dynex Technologies, Inc. Sample plate systems and methods
GB0913258D0 (en) 2009-07-29 2009-09-02 Dynex Technologies Inc Reagent dispenser
US9679401B2 (en) 2010-03-30 2017-06-13 Hewlett Packard Enterprise Development Lp Generalized scatter plots
US9146248B2 (en) 2013-03-14 2015-09-29 Intelligent Bio-Systems, Inc. Apparatus and methods for purging flow cells in nucleic acid sequencing instruments
US9591268B2 (en) * 2013-03-15 2017-03-07 Qiagen Waltham, Inc. Flow cell alignment methods and systems
WO2016209731A1 (en) 2015-06-22 2016-12-29 Fluxergy, Llc Test card for assay and method of manufacturing same
WO2016209735A1 (en) * 2015-06-22 2016-12-29 Fluxergy, Llc Camera imaging system for a fluid sample assay and method of using same
US11371091B2 (en) 2015-06-22 2022-06-28 Fluxergy, Inc. Device for analyzing a fluid sample and use of test card with same
US11151491B2 (en) * 2017-03-14 2021-10-19 The Boeing Company Turn time analytics
WO2021011944A2 (en) * 2019-07-18 2021-01-21 Essenlix Corporation Imaging based homogeneous assay
CN115078430B (zh) * 2022-06-10 2023-03-24 水木未来(北京)科技有限公司 确定冷冻电镜载网支持膜质量的方法及装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2058379A (en) 1979-09-12 1981-04-08 Agfa Gevaert Imaging Process
DE69218912T2 (de) * 1991-08-28 1997-10-09 Becton Dickinson Co Schwerkraftsattraktionsmaschine zur anpassungsfähigen autoclusterbildung n-dimensionaler datenströme
US20020150909A1 (en) * 1999-02-09 2002-10-17 Stuelpnagel John R. Automated information processing in randomly ordered arrays
US20020007122A1 (en) * 1999-12-15 2002-01-17 Howard Kaufman Methods of diagnosing disease
JP2004501358A (ja) * 2000-05-11 2004-01-15 ベクトン・ディキンソン・アンド・カンパニー 最適な境界を有する平滑化された多角形を使用して散布図中のクラスタを識別するシステム
EP1162572B1 (en) * 2000-06-06 2006-03-15 Agilent Technologies, Inc. (a Delaware corporation) Method and system for automated extraction of data from a molecular array
EP1573634A2 (en) 2000-08-22 2005-09-14 Affymetrix, Inc. System method, and computer software product for controlling biological microarray scanner
US6789040B2 (en) 2000-08-22 2004-09-07 Affymetrix, Inc. System, method, and computer software product for specifying a scanning area of a substrate
US6498863B1 (en) * 2000-09-20 2002-12-24 Media Cybernetics Inc. Method, system, and product for analyzing a digitized image of an array to create an image of a grid overlay
US7130458B2 (en) * 2000-10-24 2006-10-31 Affymetrix, Inc. Computer software system, method, and product for scanned image alignment
US20030087289A1 (en) * 2001-10-12 2003-05-08 Harry Zuzan Image analysis of high-density synthetic DNA microarrays
WO2003069333A1 (en) * 2002-02-14 2003-08-21 Illumina, Inc. Automated information processing in randomly ordered arrays
US6980677B2 (en) * 2002-05-24 2005-12-27 Niles Scientific, Inc. Method, system, and computer code for finding spots defined in biological microarrays
AU2003298655A1 (en) * 2002-11-15 2004-06-15 Bioarray Solutions, Ltd. Analysis, secure access to, and transmission of array images

Also Published As

Publication number Publication date
CA2573978C (en) 2013-10-08
EP1769424B1 (en) 2012-08-08
US20060013466A1 (en) 2006-01-19
US7315637B2 (en) 2008-01-01
WO2006019533A3 (en) 2006-04-06
EP1769424A4 (en) 2011-01-26
US20060210136A1 (en) 2006-09-21
ES2394724T3 (es) 2013-02-05
WO2006019533A2 (en) 2006-02-23
US20080253633A1 (en) 2008-10-16
CA2573978A1 (en) 2006-02-23
US7356184B2 (en) 2008-04-08
EP1769424A2 (en) 2007-04-04

Similar Documents

Publication Publication Date Title
PT1769424E (pt) Processamento de imagem e análise de dados de matriz
US10898222B2 (en) Adaptive classification for whole slide tissue segmentation
US7526114B2 (en) Analysis, secure access to, and transmission of array images
CN109416323A (zh) 具有反射基准的系统和方法
CN100377167C (zh) 一种用于二维码识别的二维码区域精确定位方法
US11972583B2 (en) Fluorescence image registration method, gene sequencing instrument, and storage medium
JP2017504307A (ja) アレイ上のフィーチャーをデジタルカウントするための方法およびシステム
US20140307931A1 (en) Fully automated system and method for image segmentation and quality control of protein microarrays
PT1774323E (pt) Análise automática de padrões de interacções sonda-alvo multiplex: correspondência de padrões e identificação de alelos
US20060173628A1 (en) Method and system for determining feature-coordinate grid or subgrids of microarray images
RU2749893C1 (ru) Способ совмещения изображений флуоресценции, прибор и система секвенирования генов и запоминающая среда
KR20130142179A (ko) 마이크로어레이의 해석 방법 및 판독 장치
PT2898449T (pt) Resumo
JP2012514758A (ja) 顕微鏡法
CN109416324A (zh) 具有非闭合形状的基准的系统和方法
JP5895613B2 (ja) 判定方法、判定装置、判定システム、および、プログラム
CN109416322A (zh) 具有偏移布局的基准的系统和方法
CN113670865B (zh) 分辨率板、分辨率评估方法及相关设备
US20050203708A1 (en) Method and system for microarray gradient detection and characterization
CN117651605A (zh) 在图案化表面的配准中使用的基准
TW202307790A (zh) 線性傅立葉基準
CN117545555A (zh) 线性傅里叶基准
KR20220128098A (ko) 물질 분석을 위한 부호화 입자 검출 방법
CN115331735A (zh) 芯片解码方法及装置