sábado, 15 de fevereiro de 2025

Codigo criado por mim, padrao logico de reação

<!DOCTYPE html>

<html lang="pt-BR">

<head>

  <meta charset="UTF-8">

  <meta name="viewport" content="width=device-width, initial-scale=1.0">

  <title>Leitor de Imagem com Lógica de Reação Avançada</title>

  <style>

    body {

      background-color:

<!DOCTYPE html>
<html lang="pt-BR">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Leitor de Imagem com Lógica de Reação Avançada</title>
    <style>
        body {
            background-color: #000;
            color: #fff;
            font-family: Arial, sans-serif;
            margin: 0;
            padding: 20px;
        }
        h1 {
            color: #00ff00;
            text-align: center;
        }
        input[type="file"] {
            display: block;
            margin: 20px auto;
            padding: 10px;
            background-color: #333;
            color: #fff;
            border: 1px solid #00ff00;
            border-radius: 5px;
        }
        button {
            display: block;
            margin: 20px auto;
            padding: 10px 20px;
            background-color: #00ff00;
            color: #000;
            border: none;
            border-radius: 5px;
            cursor: pointer;
            font-size: 16px;
        }
        button:disabled {
            background-color: #555;
            cursor: not-allowed;
        }
        pre {
            background-color: #222;
            padding: 20px;
            border-radius: 5px;
            white-space: pre-wrap;
            word-wrap: break-word;
            max-width: 800px;
            margin: 20px auto;
        }
        .loader {
            border: 4px solid #f3f3f3;
            border-top: 4px solid #00ff00;
            border-radius: 50%;
            width: 20px;
            height: 20px;
            animation: spin 1s linear infinite;
            display: none;
            margin: 0 auto;
        }
        @keyframes spin {
            0% { transform: rotate(0deg); }
            100% { transform: rotate(360deg); }
        }
        .footer {
            text-align: center;
            margin-top: 40px;
            color: #777;
        }
    </style>
</head>
<body>
    <h1>Leitor de Imagem com Lógica de Reação Avançada</h1>
    <input type="file" id="imageInput" accept="image/*">
    <button id="generateReport" disabled>
        <span id="buttonText">Gerar Relatório</span>
        <div class="loader" id="loader"></div>
    </button>
    <canvas id="imageCanvas" style="display:none;"></canvas>
    <pre id="output"></pre>

    <div class="footer">
        <p>Criado por Joaquim Pedro de Morais Filho</p>
        <p>Este sistema analisa imagens utilizando lógica de reação avançada, detectando objetos e avaliando a qualidade da imagem.</p>
    </div>

    <!-- TensorFlow.js para análise avançada -->
    <script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs"></script>
    <script src="https://cdn.jsdelivr.net/npm/@tensorflow-models/coco-ssd"></script>
    <script src="script.js"></script>
</body>
</html>
<script>document.getElementById('imageInput').addEventListener('change', function(event) {
    const file = event.target.files[0];
    if (file) {
        const reader = new FileReader();
        reader.onload = function(e) {
            const img = new Image();
            img.onload = function() {
                const canvas = document.getElementById('imageCanvas');
                const ctx = canvas.getContext('2d');
                canvas.width = img.width;
                canvas.height = img.height;
                ctx.drawImage(img, 0, 0);

                // Habilitar o botão de gerar relatório
                document.getElementById('generateReport').disabled = false;
            };
            img.src = e.target.result;
        };
        reader.readAsDataURL(file);
    }
});

document.getElementById('generateReport').addEventListener('click', function() {
    const canvas = document.getElementById('imageCanvas');
    const img = new Image();
    img.src = canvas.toDataURL();
    img.onload = function() {
        analyzeImageWithTensorFlow(img).then(logicOutput => {
            document.getElementById('output').textContent = logicOutput;
        });
    };
});

async function analyzeImageWithTensorFlow(img) {
    // Carregar o modelo COCO-SSD para detecção de objetos
    const model = await cocoSsd.load();
    const predictions = await model.detect(img);

    let logic = "∑(1¡,ac, --1,1,<,ac,1¡,1)\n";
    logic += "Padrão de Lógica de Reação aplicado à imagem.\n";

    // Pensamento: Observação da imagem
    logic += "Pensamento: Observação da imagem e detecção de objetos.\n";

    // Acontecimento: Detecção de objetos
    if (predictions.length > 0) {
        logic += "Acontecimento: Objetos detectados na imagem:\n";
        predictions.forEach(pred => {
            logic += `- ${pred.class} (${Math.round(pred.score * 100)}% de confiança)\n`;
        });
    } else {
        logic += "Acontecimento: Nenhum objeto detectado na imagem.\n";
    }

    // Execução: Análise de qualidade e contexto
    const imageQuality = assessImageQuality(img);
    logic += `Execução: Análise de qualidade da imagem - ${imageQuality}.\n`;

    // Inverso: Reversão do processo
    logic += "Inverso: Reversão do processo de análise.\n";

    // Execução final: Avaliação geral
    logic += "Execução final: Avaliação da imagem com base na lógica de reação.\n";

    // Avaliação se a imagem é "boa" ou "não"
    const isGoodImage = predictions.length > 0 && imageQuality === "Boa";
    logic += `Conclusão: A imagem é considerada ${isGoodImage ? "boa" : "não boa"}.\n`;

    return logic;
}

function assessImageQuality(img) {
    // Simulação de análise de qualidade (pode ser aprimorada)
    const brightness = calculateBrightness(img);
    if (brightness > 150) {
        return "Brilho excessivo";
    } else if (brightness < 50) {
        return "Escura";
    } else {
        return "Boa";
    }
}

function calculateBrightness(img) {
    const canvas = document.createElement('canvas');
    const ctx = canvas.getContext('2d');
    canvas.width = img.width;
    canvas.height = img.height;
    ctx.drawImage(img, 0, 0);

    const imageData = ctx.getImageData(0, 0, canvas.width, canvas.height);
    const pixels = imageData.data;
    let brightnessSum = 0;

    for (let i = 0; i < pixels.length; i += 4) {
        const r = pixels[i];
        const g = pixels[i + 1];
        const b = pixels[i + 2];
        brightnessSum += (r + g + b) / 3;
    }

    return brightnessSum / (pixels.length / 4);
}</script>

Nenhum comentário:

Postar um comentário