UOMOP

논문성능 Update 본문

카테고리 없음

논문성능 Update

Happy PinGu 2025. 1. 13. 16:52
% 기존 데이터 입력 (FLOPs 데이터)
snr_512 = [30, 25, 20, 15, 10, 5, 0]; % 새로운 SNR 범위
flops_proposed_512 = [14855.182, 14400, 14073.754, 13500, 12959.42, 12000, 11114.83];
flops_TopK_512 = [31627.156, 30991, 30431.124, 28912, 25640.668, 22231, 20487.248];
flops_Random_512 = [41444.78,  39123, 34116.336,  27983, 23495.256,  20032, 18640.542];

snr_256 = [30, 20,  10, 0]; % 새로운 SNR 범위
flops_proposed_256 = [24347.008, 21197.228, 19014.698, 17960.544];
flops_TopK_256 = [38023.62,  32121.048,  23387.992, 21973.838];
flops_Random_256 = [45570.174, 39177.99, 27203.11, 19126.07];

% DeepJSCC FLOPs는 고정값
flops_DeepJSCC = 57070;
snr_DeepJSCC = [0, 5, 10, 15, 20, 25, 30]; % DeepJSCC 데이터의 SNR 범위

% dim을 기반으로 선택
dim = 512;  % 원하는 dim 입력 (512 또는 256)

if dim == 512
    snr = snr_512;
    flops_proposed = flops_proposed_512;
    flops_TopK = flops_TopK_512;
    flops_Random = flops_Random_512;
else
    snr = snr_256;
    flops_proposed = flops_proposed_256;
    flops_TopK = flops_TopK_256;
    flops_Random = flops_Random_256;
end

% ylim 설정 예시
div = 47200;
figure;
% 수정된 그래프 옵션 (색상 및 스타일 개선)
plot(snr_DeepJSCC, (flops_DeepJSCC * ones(size(snr_DeepJSCC)))/div, '-k', 'LineWidth', 2, 'Marker', 'o', 'MarkerSize', 8, 'DisplayName', 'DeepJSCC'); hold on;
plot(snr, (flops_proposed+5050)/div, '-r', 'LineWidth', 2, 'Marker', 's', 'MarkerSize', 8, 'DisplayName', 'DA-JSCC (Proposed)');
plot(snr, (flops_TopK+5050)/div, '--b', 'LineWidth', 2, 'Marker', 'd', 'MarkerSize', 8, 'DisplayName', 'DA-JSCC (Top-K)');
plot(snr, (flops_Random+5050)/div, '-.','Color', [0, 0.5, 0], 'LineWidth', 2, 'Marker', '^', 'MarkerSize', 8, 'DisplayName', 'DA-JSCC (Random)');

% 그래프 옵션 설정
xlabel('SNR (dB)', 'FontSize', 12);
ylabel('Energy (Joule)', 'FontSize', 12);
legend('Location', 'southeast', 'FontSize', 10);
grid on;
ylim([0 1.4]); % y축 범위 설정
hold off;

 

Comments